docker镜像的导入和导出的实现
gitlab的docker使用
gitlabdocker
启动命令
dockerrun-d-p3000:80twang2218/gitlab-ce-zh:9.0.3 dockerrun-d-p8080:80gitlab/gitlab-ce:latest
将容器修改提交到镜像
#进入容器内部 [root@#localhostdocker]#dockerrun-tiubuntu:14.04/bin/bash root@812a997f614a:/#id uid=0(root)gid=0(root)groups=0(root) #做了一些修改 root@812a997f614a:/#echoupdate>update.txt root@812a997f614a:/#exit exit [root@#localhostdocker]#dockerps-a CONTAINERIDIMAGECOMMANDCREATEDSTATUSPORTSNAMES 812a997f614aubuntu:14.04"/bin/bash"7minutesagoExited(0)22secondsagozealous_euler 69304dea46c7gitlab/gitlab-ce:latest"/assets/wrapper"AboutanhouragoExited(127)44minutesagocompetent_minsky 67ba866e21b0gitlab/gitlab-ce:latest"/assets/wrapper"2hoursagoExited(137)Aboutanhouragohungry_hoover 2a3d08a0a2fftwang2218/gitlab-ce-zh:9.0.3"/assets/wrapper"2hoursagoExited(137)Aboutanhouragonervous_wozniak 6db49540be99twang2218/gitlab-ce-zh:9.0.3"/assets/wrapper"2hoursagoExited(255)2hoursago22/tcp,443/tcp,0.0.0.0:3000->80/tcpromantic_elion b08a6d6ed716gitlab/gitlab-ce:latest"/assets/wrapper"2hoursagoExited(255)2hoursago22/tcp,443/tcp,0.0.0.0:8080->80/tcpcompetent_brahmagupta 33fd0b1ebd27gitlab/gitlab-ce:latest"/assets/wrapper"2hoursagoExited(127)2hoursagoloving_brattain 6f53620a930ctwang2218/gitlab-ce-zh:9.0.3"/assets/wrapper"3hoursagoExited(127)2hoursagobrave_galileo 88df78f77c4eubuntu:14.04"sleep360"4daysagoExited(137)4daysagotestcopy 81a879a36bd3wordpress"docker-entrypoint..."4daysagoExited(0)4daysagowordpress a57a3cc492b7mysql"docker-entrypoint..."4daysagoExited(0)4daysagomysqlwp #将修改多的镜像保存成一个新的 [root@#localhostdocker]#dockercommit812a997f614aubuntu:update sha256:317f102584605694da424bc96764559a1ccfda13943353f4cbdfd89c96515e6b [root@#localhostdocker]#dockerimages REPOSITORYTAGIMAGEIDCREATEDSIZE ubuntuupdate317f102584605secondsago188MB twang2218/gitlab-ce-zh9.0.336172b5fefab44hoursago1.19GB gitlab/gitlab-celatest5eff2e44957c2daysago1.11GB mysqllatest9546ca122d3a8daysago407MB wordpresslatest4ad41adc27942weeksago401MB ubuntu14.047c09e61e90355weeksago188MB daocloud.io/library/nginx1.7.1e3e043d3ed2f2yearsago499MB #查看修改多的镜像和原来镜像之间的差异 [root@#localhostdocker]#dockerdiff812a997f614a 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@#localhostdocker]#
镜像的导入和导出
export和improt
[root@#localhostdocker]#dockerrun-tiubuntu:update/bin/bash root@cbe3cb7799ed:/#ls binbootdevetchomeliblib64mediamntoptprocrootrunsbinsrvsystmpupdate.txtusrvar [root@#localhostdocker]# [root@#localhostdocker]#dockerps-a CONTAINERIDIMAGECOMMANDCREATEDSTATUSPORTSNAMES cbe3cb7799edubuntu:update"/bin/bash"47secondsagoExited(1)6secondsagoadoring_kare 812a997f614aubuntu:14.04"/bin/bash"16minutesagoExited(0)8minutesagozealous_euler 69304dea46c7gitlab/gitlab-ce:latest"/assets/wrapper"2hoursagoExited(127)53minutesagocompetent_minsky 67ba866e21b0gitlab/gitlab-ce:latest"/assets/wrapper"2hoursagoExited(137)2hoursagohungry_hoover 2a3d08a0a2fftwang2218/gitlab-ce-zh:9.0.3"/assets/wrapper"2hoursagoExited(137)2hoursagonervous_wozniak 6db49540be99twang2218/gitlab-ce-zh:9.0.3"/assets/wrapper"2hoursagoExited(255)2hoursago22/tcp,443/tcp,0.0.0.0:3000->80/tcpromantic_elion b08a6d6ed716gitlab/gitlab-ce:latest"/assets/wrapper"2hoursagoExited(255)2hoursago22/tcp,443/tcp,0.0.0.0:8080->80/tcpcompetent_brahmagupta 33fd0b1ebd27gitlab/gitlab-ce:latest"/assets/wrapper"3hoursagoExited(127)2hoursagoloving_brattain 6f53620a930ctwang2218/gitlab-ce-zh:9.0.3"/assets/wrapper"3hoursagoExited(127)2hoursagobrave_galileo 88df78f77c4eubuntu:14.04"sleep360"4daysagoExited(137)4daysagotestcopy 81a879a36bd3wordpress"docker-entrypoint..."4daysagoExited(0)4daysagowordpress a57a3cc492b7mysql"docker-entrypoint..."4daysagoExited(0)4daysagomysqlwp #将镜像导出到文件 [root@#localhostdocker]#dockerexportcbe3cb7799ed>update.tar #创建一个新静像从基于导出的文件 [root@#localhost/]#dockerimport-updatesave和load
(像当与镜像的备份和恢复)
#update是一个已经存在的镜像 [root@#localhost/]#dockersave-oupdate1.tarupdate [root@#localhost/]#ls binbootdevetchomeliblib64mediamntoptprocrootrunsbinsrvsystmpupdate1.tarupdate.tarusrvar [root@#localhost/]#du-shupdate1.tar 166Mupdate1.tar #删除update镜像 [root@#localhost/]#dockerrmiupdate Untagged:update:latest Deleted:sha256:fd00d520a43eb5dc6cca8717fe0ca04cfdc53b02cad2fb5b50d877b8e6d6c3bc Deleted:sha256:14cc8cd7b783152682835346e5fe90860a9feeb684866688692285319d4e97ad [root@#localhost/]#dockerimages REPOSITORYTAGIMAGEIDCREATEDSIZE ubuntuupdate317f1025846016minutesago188MB twang2218/gitlab-ce-zh9.0.336172b5fefab44hoursago1.19GB gitlab/gitlab-celatest5eff2e44957c2daysago1.11GB mysqllatest9546ca122d3a8daysago407MB wordpresslatest4ad41adc27942weeksago401MB ubuntu14.047c09e61e90355weeksago188MB daocloud.io/library/nginx1.7.1e3e043d3ed2f2yearsago499MB #导入镜像 [root@#localhost/]#dockerload]173.8MB/173.8MB Loadedimage:update:latest [root@#localhost/]#dockerimages REPOSITORYTAGIMAGEIDCREATEDSIZE updatelatestfd00d520a43e6minutesago165MB ubuntuupdate317f1025846017minutesago188MB twang2218/gitlab-ce-zh9.0.336172b5fefab44hoursago1.19GB gitlab/gitlab-celatest5eff2e44957c2daysago1.11GB mysqllatest9546ca122d3a8daysago407MB wordpresslatest4ad41adc27942weeksago401MB ubuntu14.047c09e61e90355weeksago188MB daocloud.io/library/nginx1.7.1e3e043d3ed2f2yearsago499MB [root@#localhost/]# Dockerfile
[root@#localhost~]#mkdirdocker_file [root@#localhost~]#cddocker_file/ [root@#localhostdocker_file]#viDockerfile [root@#localhostdocker_file]#catDockerfile FROMubuntu:14.04 ENTRYPOINT["/bin/echo"] [root@#localhostdocker_file]#dockerbuild. SendingbuildcontexttoDockerdaemon2.048kB Step1/2:FROMubuntu:14.04 --->7c09e61e9035 Step2/2:ENTRYPOINT/bin/echo --->Runningind53f31b93355 --->26dd06d2e5a5 Removingintermediatecontainerd53f31b93355 Successfullybuilt26dd06d2e5a5 #运行镜像 [root@#localhostdocker_file]#dockerrun26dd06d2e5a5 #加入一个参数 [root@#localhostdocker_file]#dockerrun26dd06d2e5a5helloworld helloworld [root@#localhostdocker_file]#viDockerfile [root@#localhostdocker_file]#dockerrun26dd06d2e5a5helloworld helloworld # [root@#localhostdocker_file]#catDockerfile FROMubuntu:14.04 #ENTRYPOINT["/bin/echo","Hiworld!"] CMD["/bin/echo","Hiworld!"] [root@#localhostdocker_file]#dockerbuild. [root@#localhostdocker_file]#dockerrun12458a717ced Hiworld! [root@#localhostdocker_file]#dockerrun12458a717ced/bin/date SatApr812:08:14UTC2017构建的时候打个标签
[root@#localhostdocker_file]#dockerbuild-tyang:01. SendingbuildcontexttoDockerdaemon3.584kB Step1/2:FROMubuntu:14.04 --->7c09e61e9035 Step2/2:CMD/bin/echoHiworld! --->Runningin94e510f085d7 --->6b33c8a6a32f Removingintermediatecontainer94e510f085d7 Successfullybuilt6b33c8a6a32f [root@#localhostdocker_file]#dockerimages REPOSITORYTAGIMAGEIDCREATEDSIZE yang016b33c8a6a32f5secondsago188MB updatelatestfd00d520a43e29minutesago165MB ubuntuupdate317f1025846041minutesago188MB twang2218/gitlab-ce-zh9.0.336172b5fefab44hoursago1.19GB gitlab/gitlab-celatest5eff2e44957c2daysago1.11GB mysqllatest9546ca122d3a8daysago407MB wordpresslatest4ad41adc27942weeksago401MB ubuntu14.047c09e61e90355weeksago188MB daocloud.io/library/nginx1.7.1e3e043d3ed2f2yearsago499MB [root@#localhostdocker_file]#构建实例
将flask应用打包的镜像中
编写python程序hellp.py
#!/usr/bin/envpython fromflaskimportFlask app=Flask(__name__) @app.route('/hi') defhello_world(): return'HelloWorld!' if__name__=='__main__': app.run(host='0.0.0.0',port=5000)编写Dockerfile
FROMubuntu:14.04 RUNapt-getupdate RUNapt-getinstall-ypython RUNapt-getinstall-ypython-pip RUNapt-getcleanall RUNpipinstallflask ADDhello.py/tmp/hello.py EXPOSE5000 CMD["python","/tmp/hello.py"]到此这篇关于docker镜像的导入和导出的实现的文章就介绍到这了,更多相关docker镜像导入导出内容请搜索毛票票以前的文章或继续浏览下面的相关文章希望大家以后多多支持毛票票!