从零开始:详解手动构建Docker镜像的完整流程
本节内容:
创建docker镜像的方法
手动构建镜像
一、创建docker镜像的方法
使用"docker commit"命令
使用"docker build"命令+"Dockerfile"文件
不推荐使用docker commit命令,而应该使用更灵活、更强大的dockerfile来构建docker镜像。
本篇文章先介绍docker commit来构建镜像。
二、手动构建镜像
一般来说,我们并不是真正从0开始构建镜像,而是基于一个已经存在的镜像,比如centos,然后进行一些安装和配置,构建自己新的镜像。
【示例】:手动构建Nginx镜像。
[ ]
[ ]
[ ]
[ ]
安装完成后,我们需要将nginx程序设置为前台运行模式,这样容器启动后nginx进程会一直在前台运行而不会退出。因为如果启动容器时的进程退出,容器也就结束了。
[ ]
daemon off;
[root@eadfe0c0903d /]# exit
exit
基于上面的容器制作一个镜像:
[root@node1 ~]# docker ps -a
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
eadfe0c0903d centos "/bin/bash" 12 minutes ago Exited (0) 2 minutes ago mynginx
[root@node1 ~]# docker commit -m "nginx test mirror" eadfe0c0903d jkzhao/mynginx:v1
基于这个镜像启动容器:
[ ]
REPOSITORY TAG IMAGE ID CREATED SIZE
jkzhao/mynginx v1 bdf7d4fda6fb 4 minutes ago 381.6 MB
docker.io/centos latest 328edcd84f1b 2 weeks ago 192.5 MB
registry.docker-cn.com/library/centos latest 328edcd84f1b 2 weeks ago 192.5 MB
docker.io/nginx latest b8efb18f159b 3 weeks ago 107.5 MB
[ ]
【注意】:
必须加tag v1,否则会去仓库中找latest标签的镜像;
最后 nginx 是命令,容器启动时运行的命令,我这里是yum安装,不是yum安装的要写绝对路径。
链接:https://www.cnblogs.com/zhaojiankai/p/7753470.html
(版权归原作者所有,侵删)
微信扫码关注该文公众号作者
戳这里提交新闻线索和高质量文章给我们。
来源: qq
点击查看作者最近其他文章