docker登录密码错误_「docker实战篇」python的docker-docker镜像的创建dockerfile(33)...

117fd6124d0416c3eb4481d838ee623e.png
从上篇docker commit学习可以了解到,镜像的定制其实每一层添加的配置和文件,如果把每一层的修改配置,修改文件,都写入脚本,用这个脚本构建定制镜像,无法重复的问题,镜像构建透明性的问题,体积的问题都会解决。这个脚本就是Dockerfile。

f9237e4940472c45bbd3b18593f2a415.png

Dockerfile

  • 什么是dockerfile一个文本文件,其内包含了一条条的指令,每一条指令构建一层,因此每一条指令的内容,就是描述该层应当如何构建。
  • 了解FROMFROM指定基础镜像,基础镜像是必须指定的。而FROM就是指定基础镜像,因此一个Dockerfile中From是必备的指令,并且必须是第一条指令。在dockerhub上有很多高质量的docker镜像,有可以直接拿来使用的基础镜像:nginx,tomcat,java,python,php,mongodb。搜寻最符合使用的的一个基础镜像。
  • 了解RUNRUN执行命令是用来执行命令行命令的。由于命令行的强大能力,RUN指令在定制镜像时最常用的指令之一。
shell 格式: RUN<命令>,就像直接在命令行中输入的命令一样
exec 格式: RUN["可执行文件","参数1","参数2"],这更像是函数调用中的格式
  • 不建议的写成下面这种Dockerfile
    > 之前说过Dockerfile每个指令都会创建一个层,下面这种写法就是创建了7层的镜像,这样做就完全是没有意义的,很多运行不需要的东西都被装到这个镜像里面去了,编译环境更新软件包,产生非常臃肿层非常多的镜像,不仅仅增加了构建部署的时间,也很容易出错,也是初学docker容易犯的错误,之前我也犯过。镜像的层数是有限制的,最大层不能超过127层。镜像是多层存储的,在加入一层就是,之前的层不会被修改。

8428ccac62d89fccfafc046c13240174.png
正确的方式。一定要做到每一层是需要的东西,任何无关的东西都要被清理掉。这也是制作镜像容易犯的错误,之前安装的文件没有清理。

e7b14329da5e7e6e930cd3cf12d2c5d0.png

实战编写Dockerfile

  • 创建目录,存放Dockerfile
mkdir newNginx
cd newNginx

97815e61592ef27e624a22978fe3dc90.png
  • 编写 Dockerfile
From nginx
RUN echo '<h1>welcome to idig8.com study docker</h1>' > /usr/share/nginx/html/index.html

5a0373c3edc3fafa6c3a3d43bac6acab.png
  • 构建Dockerfile
docker build -t nginx:v2 .
docker images

94a45c10bad4539da239a0e118da20b1.png
  • 推送docker hub推送
    >登录docker hub
#先配置dns 8.8.8.8
 vi /etc/resolv.conf

docker login

cc100ca517d0c13c84a1ff3b1658ec38.png

74fe9de26c38bbcdef93743fa1f37099.png
设置仓库地址,登录http://hub.docker.com

888136dfd660ed67a028d98ccd9e04b3.png
更改名称
docker tag nginx:v2 zhugeaming/nginx:v2

5a73791bbd96bc3e8e470164f39d546c.png
完成推送
docker push zhugeaming/nginx:v2

3a63c29793bd932a4f7803d6741db578.png
查看结果

8103557184076789d8c4db41269fddd5.png

7d09769a7cf8ce9fa145ed4740f54ea5.png

PS:其实在开发的时候,多任务的时候,只需要一个python3和mitmproxy的镜像环境,已经做好了,到时候直接用docker push zhugeaming/python3-appium,其实想学习docker其他内容可以看我之前写的其他文章。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值