不为有趣之事,何遣有涯之生
不失其所者久,死而不亡者寿

Docker简明教程(5) 镜像构建

镜像构建

使用commit命令创建镜像(不推荐)

虽然不推荐,但还是要了解下

  • 登录到DockerHub
docker login

如果没有账号前往docker.com官网进行注册

  • 创建一个需要提交的容器
docker run -i -t ubuntu /bin/bash
apt-get -y update
apt-get -y install apache2
  • 退出创建的容器
exit
  • 提交定制了apache2的容器
docker commit b729d5a05235 hzqiuxm/apache2

用Dockerfile构建镜像 (推荐)

优点: 具备可重复性,透明性,幂等性
- 编写脚本Dockerfile
制定一个目录下创建一个文件Dockerfile

# Version: 0.0.1
FROM unbuntu:14.04
MAINTAINER James Turnbull "hzqiuxm@163.com"
RUN apt-get update && apt-get install -y nginx
RUN echo 'Hi I am in your contaniner' \
    >/usr/share/nginx/html/index.html
EXPOSE 80
  • 执行脚本
docker build -t="hzqiuxm/static_web" .
注意后面的. 表示当前目录

  • 推送镜像到自己的DockerHub
docker push hzqiuxm/static_web

构建关键点

  • Dockerfile构建缓存保证每次从失败的步骤继续
  • Dockerfile新指令

自动构建

除了上述二种方式,我们可以可以把GitHub或BitBucket中含有Dockerfile文件的仓库连接到DockerHub即可

删除镜像

docker rmi hzqiuxm/static_web

只会删除本地的镜像

运行自己的Docker Registry

  • 利用DockerHub提供的私有仓库(小项目推荐)
  • 在防火墙后面运行自己的Registry(大项目推荐)
未经允许不得转载:菡萏如佳人 » Docker简明教程(5)

欢迎加入极客江湖

进入江湖关于作者