docker打包配置好的镜像(docker镜像的导入和导出的实现)
类别:服务器 浏览量:826
时间:2021-10-25 10:26:15 docker打包配置好的镜像
docker镜像的导入和导出的实现gitlab 的docker使用
gitlab docker
启动命令
docker run -d -p 3000:80 twang2218/gitlab-ce-zh:9.0.3 docker run -d -p 8080:80 gitlab/gitlab-ce:latest
将容器修改提交到镜像
# 进入容器内部 [root@#localhost docker]# docker run -ti ubuntu:14.04 /bin/bash root@812a997f614a:/# id uid=0(root) gid=0(root) groups=0(root) #做了一些修改 root@812a997f614a:/# echo update>update.txt root@812a997f614a:/# exit exit [root@#localhost docker]# docker ps -a CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES 812a997f614a ubuntu:14.04 "/bin/bash" 7 minutes ago Exited (0) 22 seconds ago zealous_euler 69304dea46c7 gitlab/gitlab-ce:latest "/assets/wrapper" About an hour ago Exited (127) 44 minutes ago competent_minsky 67ba866e21b0 gitlab/gitlab-ce:latest "/assets/wrapper" 2 hours ago Exited (137) About an hour ago hungry_hoover 2a3d08a0a2ff twang2218/gitlab-ce-zh:9.0.3 "/assets/wrapper" 2 hours ago Exited (137) About an hour ago nervous_wozniak 6db49540be99 twang2218/gitlab-ce-zh:9.0.3 "/assets/wrapper" 2 hours ago Exited (255) 2 hours ago 22/tcp, 443/tcp, 0.0.0.0:3000->80/tcp romantic_elion b08a6d6ed716 gitlab/gitlab-ce:latest "/assets/wrapper" 2 hours ago Exited (255) 2 hours ago 22/tcp, 443/tcp, 0.0.0.0:8080->80/tcp competent_brahmagupta 33fd0b1ebd27 gitlab/gitlab-ce:latest "/assets/wrapper" 2 hours ago Exited (127) 2 hours ago loving_brattain 6f53620a930c twang2218/gitlab-ce-zh:9.0.3 "/assets/wrapper" 3 hours ago Exited (127) 2 hours ago brave_galileo 88df78f77c4e ubuntu:14.04 "sleep 360" 4 days ago Exited (137) 4 days ago testcopy 81a879a36bd3 wordpress "docker-entrypoint..." 4 days ago Exited (0) 4 days ago wordpress a57a3cc492b7 mysql "docker-entrypoint..." 4 days ago Exited (0) 4 days ago mysqlwp # 将修改多的镜像保存成一个新的 [root@#localhost docker]# docker commit 812a997f614a ubuntu:update sha256:317f102584605694da424bc96764559a1ccfda13943353f4cbdfd89c96515e6b [root@#localhost docker]# docker images REPOSITORY TAG IMAGE ID CREATED SIZE ubuntu update 317f10258460 5 seconds ago 188 MB twang2218/gitlab-ce-zh 9.0.3 36172b5fefab 44 hours ago 1.19 GB gitlab/gitlab-ce latest 5eff2e44957c 2 days ago 1.11 GB mysql latest 9546ca122d3a 8 days ago 407 MB wordpress latest 4ad41adc2794 2 weeks ago 401 MB ubuntu 14.04 7c09e61e9035 5 weeks ago 188 MB daocloud.io/library/nginx 1.7.1 e3e043d3ed2f 2 years ago 499 MB # 查看修改多的镜像和原来镜像之间的差异 [root@#localhost docker]# docker diff 812a997f614a C /var C /var/cache C /var/cache/apt D /var/cache/apt/srcpkgcache.bin D /var/cache/apt/pkgcache.bin C /var/lib C /var/lib/apt C /var/lib/apt/lists A /var/lib/apt/lists/lock A /var/lib/apt/lists/partial A /var/lib/apt/lists/partial/archive.ubuntu.com_ubuntu_dists_trusty-updates_InRelease A /update.txt C /root A /root/.bash_history [root@#localhost docker]#
镜像的导入和导出
export 和improt
[root@#localhost docker]# docker run -ti ubuntu:update /bin/bash root@cbe3cb7799ed:/# ls bin boot dev etc home lib lib64 media mnt opt proc root run sbin srv sys tmp update.txt usr var [root@#localhost docker]# [root@#localhost docker]# docker ps -a CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES cbe3cb7799ed ubuntu:update "/bin/bash" 47 seconds ago Exited (1) 6 seconds ago adoring_kare 812a997f614a ubuntu:14.04 "/bin/bash" 16 minutes ago Exited (0) 8 minutes ago zealous_euler 69304dea46c7 gitlab/gitlab-ce:latest "/assets/wrapper" 2 hours ago Exited (127) 53 minutes ago competent_minsky 67ba866e21b0 gitlab/gitlab-ce:latest "/assets/wrapper" 2 hours ago Exited (137) 2 hours ago hungry_hoover 2a3d08a0a2ff twang2218/gitlab-ce-zh:9.0.3 "/assets/wrapper" 2 hours ago Exited (137) 2 hours ago nervous_wozniak 6db49540be99 twang2218/gitlab-ce-zh:9.0.3 "/assets/wrapper" 2 hours ago Exited (255) 2 hours ago 22/tcp, 443/tcp, 0.0.0.0:3000->80/tcp romantic_elion b08a6d6ed716 gitlab/gitlab-ce:latest "/assets/wrapper" 2 hours ago Exited (255) 2 hours ago 22/tcp, 443/tcp, 0.0.0.0:8080->80/tcp competent_brahmagupta 33fd0b1ebd27 gitlab/gitlab-ce:latest "/assets/wrapper" 3 hours ago Exited (127) 2 hours ago loving_brattain 6f53620a930c twang2218/gitlab-ce-zh:9.0.3 "/assets/wrapper" 3 hours ago Exited (127) 2 hours ago brave_galileo 88df78f77c4e ubuntu:14.04 "sleep 360" 4 days ago Exited (137) 4 days ago testcopy 81a879a36bd3 wordpress "docker-entrypoint..." 4 days ago Exited (0) 4 days ago wordpress a57a3cc492b7 mysql "docker-entrypoint..." 4 days ago Exited (0) 4 days ago mysqlwp # 将镜像导出到文件 [root@#localhost docker]# docker export cbe3cb7799ed > update.tar # 创建一个新静像从基于导出的文件 [root@#localhost /]# docker import - update < update.tar sha256:fd00d520a43eb5dc6cca8717fe0ca04cfdc53b02cad2fb5b50d877b8e6d6c3bc [root@#localhost /]# docker images REPOSITORY TAG IMAGE ID CREATED SIZE update latest fd00d520a43e 13 seconds ago 165 MB ubuntu update 317f10258460 11 minutes ago 188 MB twang2218/gitlab-ce-zh 9.0.3 36172b5fefab 44 hours ago 1.19 GB gitlab/gitlab-ce latest 5eff2e44957c 2 days ago 1.11 GB mysql latest 9546ca122d3a 8 days ago 407 MB wordpress latest 4ad41adc2794 2 weeks ago 401 MB ubuntu 14.04 7c09e61e9035 5 weeks ago 188 MB daocloud.io/library/nginx 1.7.1 e3e043d3ed2f 2 years ago 499 MB [root@#localhost /]#
save 和load
(像当与镜像的备份和恢复)
# update是一个已经存在的镜像 [root@#localhost /]# docker save -o update1.tar update [root@#localhost /]# ls bin boot dev etc home lib lib64 media mnt opt proc root run sbin srv sys tmp update1.tar update.tar usr var [root@#localhost /]# du -sh update1.tar 166M update1.tar # 删除update镜像 [root@#localhost /]# docker rmi update Untagged: update:latest Deleted: sha256:fd00d520a43eb5dc6cca8717fe0ca04cfdc53b02cad2fb5b50d877b8e6d6c3bc Deleted: sha256:14cc8cd7b783152682835346e5fe90860a9feeb684866688692285319d4e97ad [root@#localhost /]# docker images REPOSITORY TAG IMAGE ID CREATED SIZE ubuntu update 317f10258460 16 minutes ago 188 MB twang2218/gitlab-ce-zh 9.0.3 36172b5fefab 44 hours ago 1.19 GB gitlab/gitlab-ce latest 5eff2e44957c 2 days ago 1.11 GB mysql latest 9546ca122d3a 8 days ago 407 MB wordpress latest 4ad41adc2794 2 weeks ago 401 MB ubuntu 14.04 7c09e61e9035 5 weeks ago 188 MB daocloud.io/library/nginx 1.7.1 e3e043d3ed2f 2 years ago 499 MB #导入镜像 [root@#localhost /]# docker load < update1.tar 14cc8cd7b783: Loading layer [==================================================>] 173.8 MB/173.8 MB Loaded image: update:latest [root@#localhost /]# docker images REPOSITORY TAG IMAGE ID CREATED SIZE update latest fd00d520a43e 6 minutes ago 165 MB ubuntu update 317f10258460 17 minutes ago 188 MB twang2218/gitlab-ce-zh 9.0.3 36172b5fefab 44 hours ago 1.19 GB gitlab/gitlab-ce latest 5eff2e44957c 2 days ago 1.11 GB mysql latest 9546ca122d3a 8 days ago 407 MB wordpress latest 4ad41adc2794 2 weeks ago 401 MB ubuntu 14.04 7c09e61e9035 5 weeks ago 188 MB daocloud.io/library/nginx 1.7.1 e3e043d3ed2f 2 years ago 499 MB [root@#localhost /]#
Dockerfile
[root@#localhost ~]# mkdir docker_file [root@#localhost ~]# cd docker_file/ [root@#localhost docker_file]# vi Dockerfile [root@#localhost docker_file]# cat Dockerfile FROM ubuntu:14.04 ENTRYPOINT ["/bin/echo"] [root@#localhost docker_file]# docker build . Sending build context to Docker daemon 2.048 kB Step 1/2 : FROM ubuntu:14.04 ---> 7c09e61e9035 Step 2/2 : ENTRYPOINT /bin/echo ---> Running in d53f31b93355 ---> 26dd06d2e5a5 Removing intermediate container d53f31b93355 Successfully built 26dd06d2e5a5 #运行镜像 [root@#localhost docker_file]# docker run 26dd06d2e5a5 #加入一个参数 [root@#localhost docker_file]# docker run 26dd06d2e5a5 hello world hello world [root@#localhost docker_file]# vi Dockerfile [root@#localhost docker_file]# docker run 26dd06d2e5a5 hello world hello world # [root@#localhost docker_file]# cat Dockerfile FROM ubuntu:14.04 #ENTRYPOINT ["/bin/echo","Hi world!"] CMD ["/bin/echo","Hi world!"] [root@#localhost docker_file]# docker build . [root@#localhost docker_file]# docker run 12458a717ced Hi world! [root@#localhost docker_file]# docker run 12458a717ced /bin/date Sat Apr 8 12:08:14 UTC 2017
构建的时候打个标签
[root@#localhost docker_file]# docker build -t yang:01 . Sending build context to Docker daemon 3.584 kB Step 1/2 : FROM ubuntu:14.04 ---> 7c09e61e9035 Step 2/2 : CMD /bin/echo Hi world! ---> Running in 94e510f085d7 ---> 6b33c8a6a32f Removing intermediate container 94e510f085d7 Successfully built 6b33c8a6a32f [root@#localhost docker_file]# docker images REPOSITORY TAG IMAGE ID CREATED SIZE yang 01 6b33c8a6a32f 5 seconds ago 188 MB update latest fd00d520a43e 29 minutes ago 165 MB ubuntu update 317f10258460 41 minutes ago 188 MB twang2218/gitlab-ce-zh 9.0.3 36172b5fefab 44 hours ago 1.19 GB gitlab/gitlab-ce latest 5eff2e44957c 2 days ago 1.11 GB mysql latest 9546ca122d3a 8 days ago 407 MB wordpress latest 4ad41adc2794 2 weeks ago 401 MB ubuntu 14.04 7c09e61e9035 5 weeks ago 188 MB daocloud.io/library/nginx 1.7.1 e3e043d3ed2f 2 years ago 499 MB [root@#localhost docker_file]#
构建实例
将flask应用 打包的镜像中
编写python程序 hellp.py
#!/usr/bin/env python from flask import Flask app = Flask(__name__) @app.route('/hi') def hello_world(): return 'Hello World!' if __name__ == '__main__': app.run(host='0.0.0.0', port=5000)
编写Dockerfile
FROM ubuntu:14.04 RUN apt-get update RUN apt-get install -y python RUN apt-get install -y python-pip RUN apt-get clean all RUN pip install flask ADD hello.py /tmp/hello.py EXPOSE 5000 CMD ["python","/tmp/hello.py"]
到此这篇关于docker镜像的导入和导出的实现的文章就介绍到这了,更多相关docker镜像导入导出内容请搜索开心学习网以前的文章或继续浏览下面的相关文章希望大家以后多多支持开心学习网!
您可能感兴趣
- docker显示出错应用图标怎么处理(docker 命令报异常permission denied的解决方案)
- dockerfile的镜像原理(dockerfile制作apache镜像的方法)
- docker 退出容器详解(Docker 使用nsenter工具进入容器的操作)
- docker容器运行环境(Docker 清理环境操作)
- docker线上部署流程(Docker部署Rancher的方法无坑)
- docker目录映射不起作用(关于dockerfile build过程中报/bin/sh: pip: command not found的解决方法)
- docker和jenkins自动化(Docker使用Git实现Jenkins发布、测试项目的详细流程)
- docker容器状态显示(Docker consul的容器服务更新与发现的问题小结)
- docker怎么设置参数(浅谈docker --privileged=true参数作用)
- docker镜像怎么用(Docker和镜像的操作方法)
- docker gitlab 配置(使用Docker构建一个Git镜像使用clone仓库)
- dockercompose设置系统环境变量(使用docker compose搭建consul集群环境的例子)
- docker怎么使用supervisor(supervisor下的Dockerfile的多服务镜像封装操作)
- docker和k8s怎么部署(在docker中部署k8s的方法)
- docker root权限(docker 免root权限登陆的解决方案)
- docker暴露端口无法访问(完美解决Windows10下无法对docker容器进行端口访问的操作)
- 精英律师 廖佳敏封印恋情曝光,顾婕马失前蹄 你个老不死的(廖佳敏封印恋情曝光)
- 以家人之名广受好评,剧情生动引起观众共鸣,演员张新成圈粉无数(以家人之名广受好评)
- 三兄妹感情再遇波折,人设接连崩塌 《以家人之名》剧情猜不透(三兄妹感情再遇波折)
- 《小敏家》金波想要复婚 这只是他圈套的第1步,更可恶的在后面(小敏家金波想要复婚)
- 小敏家 剧情离谱一锅乱炖,但他们俩绝对是这部剧的一大 亮点(剧情离谱一锅乱炖)
- 《倚天屠龙记》再遭翻拍,关晓彤主演赵敏,蒋劲夫演张无忌,你怎么看(倚天屠龙记再遭翻拍)
热门推荐
- mysqlsql按日期统计(sqlserver/mysql按天、按小时、按分钟统计连续时间段数据推荐)
- php脚本通过文件路径批量上传文件(php遍历目录下文件并按修改时间排序操作示例)
- centos linux开机不出现登录页面(在CentOS启动时自动加载内核模块overlayfs操作)
- dedecms获取子目录(详解dedecms利用[field:arcurl/]无法获取文章路径的解决方法)
- dedecms中的有些功能如何修改(dedecms 每个栏目下的文章总数的调用)
- js中alert相关知识点(js中getBoundingClientRect 方法案例详解)
- 微信小程序计时器(微信小程序实现简单的计算器功能)
- group by如何知道分了几组(详解partition by和group by对比)
- php秒杀实现代码(php无限极分类实现方法分析)
- python3和python区别(Python2与Python3的区别实例总结)
排行榜
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9