35-m-制作docker镜像

1.镜像的生产途径

   a.Dockerfile

   b.基于容器制作

[root@localhost ~]# docker run --name b1 -it busybox   # 运行一个容器,
Unable to find image 'busybox:latest' locally
latest: Pulling from library/busybox
fc1a6b909f82: Pull complete 
Digest: sha256:954e1f01e80ce09d0887ff6ea10b13a812cb01932a0781d6b0cc23f743a874fd
Status: Downloaded newer image for busybox:latest
/ # 
/ # mkdir -p /data/html
/ # vi /data/html/index.html

# 复制另一个窗口
[root@localhost ~]# docker commit -p b1   # 提交
sha256:63da40744f6b4b0ba8ef21f92a26aa5a7d235f22105e2c35f2367eeaee6029ad
[root@localhost ~]# docker images
REPOSITORY                     TAG                 IMAGE ID            CREATED             SIZE
<none>                         <none>              63da40744f6b        4 seconds ago       1.2MB
busybox                        latest              af2f74c517aa        3 weeks ago         1.2MB
centos                         7                   9f38484d220f        5 weeks ago         202MB
[root@localhost ~]# docker tag 63da40744f6b xiao/b1:v0.1  # 打标签

[root@localhost ~]# docker images  #查看
REPOSITORY                     TAG                 IMAGE ID            CREATED              SIZE
xiao/b1                        v0.1                63da40744f6b        About a minute ago   1.2MB

 # 改变容器里默认运行的CMD命令

# 改变容器里面运行的默认命令,-a 注释,-c 命令,-f 前台,-p 暂停

[root@localhost ~]# docker commit -a "xiao<xiao@qq.com>" -c 'CMD ["/bin/httpd","-f","-h","/data/html"]' -p b1 xiao/b1:v0.2
sha256:f1475dab5e2d20c6419cb8dfdacd0711d2684f6f8bf268f16761c2251e62467b
[root@localhost ~]# docker run xiao/b1:v0.2

# 复制另一个ssh查看
[root@localhost ~]# docker ps 
CONTAINER ID        IMAGE               COMMAND                  CREATED             STATUS              PORTS               NAMES
d9d98eb6ee21        xiao/b1:v0.2        "/bin/httpd -f -h /d…"   3 minutes ago       Up 3 minutes                            amazing_bartik

# 测试访问
[root@localhost ~]# curl  172.17.0.3
test xiao

 

   c.Docker Hub Automated Builds

 

posted @ 2019-04-24 10:53  sunmmi  阅读(140)  评论(0)    收藏  举报