构建镜像的两种方法:
- 使用docker commit 命令
- 使用docker build命令和Dockerfile文件
Dockerfile更抢到、灵活,推荐使用。
一般来说不是真的“创建”新镜像,而是基于一个已有的基础镜像,比如Ubuntu、Fedora等,构建新的镜像而已。
用commit创建镜像
创建Docker账号
共享和发布镜像时构建镜像中重要的环节,可以将镜像推送到Docker Hub或资金的私有Registry中。首先到https://hub.docker.com/account/signup/ 创建账号。
邮件激活后,可以测试登录:
$ sudo docker login
这条命令会完成登录,并将认证信息报错起来供后面使用。个人认证信息将报错到$HOME/ .dockercfg文件中.
用 commit 命令创建镜像
可以想象是往版本控制系统里提交变更:首先创建一个容器,并在容器里做修改,就行修改代码一样,最后在讲修改提交为一个新镜像。
创建一个新容器命令:
$ sudo docker run -i -t ubuntu /bin/bash
我用之前创建好的aoct容器:
$ sudo docker start aoct $ sudo docker attach aoct
安装Apache:
root@614122c0aabb:/# apt-get -yqq update ... root@614122c0aabb:/# apt-get -y install apache2 ...
想把这个容器作为一个Web服务器来运行,所以要把它当前状态保存下来,就不必每次都创建一个新容器并再次安装Apache。
所以先用exit命令退出容器,再运行docker commit命令:
$ sudo docker commit 614122c0aabb aoct/apache2
命令中,指定了要提交的修改过的容器的ID、目标镜像仓库、镜像名。commit提交的知识创建容器的镜像与容器的当前状态之间的差异部分,很轻量。
查看新创建的镜像:
$ sudo docker images aoct/apache2
也可以像git一样,在提交镜像时指定更多信息来描述所做的修改:
复制代码 代码如下:
$ sudo docker commit -m='A new image' --author='Aomine' 614122c0aabb aoct/apache2
上面代码,用-m指定行创建的镜像的提交信息。--author指定镜像作者,接着是容器ID、目标镜像仓库、镜像名。
使用docker inspect命令查看新创建的镜像的详细信息:
$ sudo docker inspect aoct/apache2
使用docker run命令从刚创建的新镜像运行一个容器:
$ sudo docker run -t -i aoct/apache2 /bin/bash
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。
免责声明:本站文章均来自网站采集或用户投稿,网站不提供任何软件下载或自行开发的软件! 如有用户或公司发现本站内容信息存在侵权行为,请邮件告知! 858582#qq.com
更新日志
- 老头杯第二届规则是什么 英雄联盟老头杯第二届规则介绍
- 王崴-爵士听堂.蓝色波萨(HQCD)[WAV+CUE]
- 群星《欧美动听情歌·柔情第5季》2CD【DTS-WAV分轨】
- [极品珍藏]德意志进行曲集卡拉扬SACD[WAV+CUE]
- 前暴雪制作人呼吁反击DEI 玩家:夺回文化!
- 腾讯证实子公司Sharkmob大规模裁员:整个市场很低迷
- 荣耀加冕 问鼎冠军 中国代表队获第四届东亚电竞锦标赛团体总冠军
- 污甩乐队.2024-Let.the.dirt.left【摩登天空】【FLAC分轨】
- 杜德伟.1994-ALL.FOR.YOU(英)【滚石】【WAV+CUE】
- 群星.2013-百代好声音ADMSCD1【EMI百代】【WAV+CUE】
- 群星《私人音乐精选示范碟》PRIVATEMUSIC 发烧唱片名碟[WAV+CUE][1.1G]
- 山口百惠《あなたへの子守唄》日本索尼钢刻字首版[WAV分轨][1.1G]
- 群星《宝丽金20周年特别发烧版》1:1母盘直刻限量编号[低速原抓WAV+CUE][1G]
- 凤飞飞.1984-仲夏(夏艳)[WAV]
- 常安《民歌红·江南燕》DTS-ES6.1[WAV]