Docker镜像制作
通过提交保持一个镜像的改变永远有效问题:
往往在我们删除一个容器后又用相同镜像进行部署时,我们做的更改的那个镜像里面的数据会丢失,假如我们想要重新使用我们改变后的镜像作为一个源,怎么做?请看解决方案
解决:
我们可以通过docker commit来完成,并且定义一个新的镜像
$ docker run -t -i ubuntu:14.04 /bin/bash
# docker run -t -i ubuntu:14.04 /bin/bash、
root@8c892f17fc59:/# apt-get update
Get:1 http://security.ubuntu.com trusty-security InRelease
Get:2 http://security.ubuntu.com trusty-security/universe Sources
Get:3 http://security.ubuntu.com trusty-security/main amd64 Packages
Ign http://archive.ubuntu.com trusty InRelease
Get:4 http://archive.ubuntu.com trusty-updates InRelease
Get:5 http://security.ubuntu.com trusty-security/restricted amd64 Packages
Get:6 http://archive.ubuntu.com trusty-backports InRelease
Get:7 http://security.ubuntu.com trusty-security/universe amd64 Packages
Get:8 http://archive.ubuntu.com trusty Release.gpg
Get:9 http://archive.ubuntu.com trusty-updates/universe Sources
Get:10 http://security.ubuntu.com trusty-security/multiverse amd64 Packages
Get:11 http://archive.ubuntu.com trusty-updates/main amd64 Packages
Get:12 http://archive.ubuntu.com trusty-updates/restricted amd64 Packages
Get:13 http://archive.ubuntu.com trusty-updates/universe amd64 Packages
Get:14 http://archive.ubuntu.com trusty-updates/multiverse amd64 Packages
Get:15 http://archive.ubuntu.com trusty-backports/main amd64 Packages
Get:16 http://archive.ubuntu.com trusty-backports/restricted amd64 Packages
Get:17 http://archive.ubuntu.com trusty-backports/universe amd64 Packages
Get:18 http://archive.ubuntu.com trusty-backports/multiverse amd64 Packages
Get:19 http://archive.ubuntu.com trusty Release
Get:20 http://archive.ubuntu.com trusty/universe Sources
Get:21 http://archive.ubuntu.com trusty/main amd64 Packages
Get:22 http://archive.ubuntu.com trusty/restricted amd64 Packages
Get:23 http://archive.ubuntu.com trusty/universe amd64 Packages
Get:24 http://archive.ubuntu.com trusty/multiverse amd64 Packages
Fetched 21.3 MB in 37s (572 kB/s)
Reading package lists... Done
# docker commit 8c89 ubuntu:update
sha256:2292f220bc30f7aa1bb08a795f8ecd5ac58f58a94705c899b1d2d96fa353a584
我们也可以通过diff选项来看在原镜像和现在的镜像之间有哪些改变。
# docker diff 8c89
C /root
A /root/.bash_history
C /tmp
C /var
C /var/cache
C /var/cache/apt
D /var/cache/apt/pkgcache.bin
D /var/cache/apt/srcpkgcache.bin
C /var/lib
C /var/lib/apt/lists
A /var/lib/apt/lists/archive.ubuntu.com_ubuntu_dists_trusty-backports_InRelease
A /var/lib/apt/lists/archive.ubuntu.com_ubuntu_dists_trusty-backports_main_binary-amd64_Packages.gz
A /var/lib/apt/lists/archive.ubuntu.com_ubuntu_dists_trusty-backports_multiverse_binary-amd64_Packages.gz
A /var/lib/apt/lists/archive.ubuntu.com_ubuntu_dists_trusty-backports_restricted_binary-amd64_Packages.gz
A /var/lib/apt/lists/archive.ubuntu.com_ubuntu_dists_trusty-backports_universe_binary-amd64_Packages.gz
C /var/lib/apt/lists/archive.ubuntu.com_ubuntu_dists_trusty-updates_InRelease
A /var/lib/apt/lists/archive.ubuntu.com_ubuntu_dists_trusty-updates_main_binary-amd64_Packages.gz
A /var/lib/apt/lists/archive.ubuntu.com_ubuntu_dists_trusty-updates_multiverse_binary-amd64_Packages.gz
A /var/lib/apt/lists/archive.ubuntu.com_ubuntu_dists_trusty-updates_restricted_binary-amd64_Packages.gz
A /var/lib/apt/lists/archive.ubuntu.com_ubuntu_dists_trusty-updates_universe_binary-amd64_Packages.gz
A /var/lib/apt/lists/archive.ubuntu.com_ubuntu_dists_trusty-updates_universe_source_Sources.gz
C /var/lib/apt/lists/archive.ubuntu.com_ubuntu_dists_trusty_Release
C /var/lib/apt/lists/archive.ubuntu.com_ubuntu_dists_trusty_Release.gpg
A /var/lib/apt/lists/archive.ubuntu.com_ubuntu_dists_trusty_main_binary-amd64_Packages.gz
A /var/lib/apt/lists/archive.ubuntu.com_ubuntu_dists_trusty_multiverse_binary-amd64_Packages.gz
A /var/lib/apt/lists/archive.ubuntu.com_ubuntu_dists_trusty_restricted_binary-amd64_Packages.gz
A /var/lib/apt/lists/archive.ubuntu.com_ubuntu_dists_trusty_universe_binary-amd64_Packages.gz
A /var/lib/apt/lists/archive.ubuntu.com_ubuntu_dists_trusty_universe_source_Sources.gz
C /var/lib/apt/lists/lock
C /var/lib/apt/lists/partial
C /var/lib/apt/lists/security.ubuntu.com_ubuntu_dists_trusty-security_InRelease
A /var/lib/apt/lists/security.ubuntu.com_ubuntu_dists_trusty-security_main_binary-amd64_Packages.gz
A /var/lib/apt/lists/security.ubuntu.com_ubuntu_dists_trusty-security_multiverse_binary-amd64_Packages.gz
A /var/lib/apt/lists/security.ubuntu.com_ubuntu_dists_trusty-security_restricted_binary-amd64_Packages.gz
A /var/lib/apt/lists/security.ubuntu.com_ubuntu_dists_trusty-security_universe_binary-amd64_Packages.gz
A /var/lib/apt/lists/security.ubuntu.com_ubuntu_dists_trusty-security_universe_source_Sources.gz
C /var/lib/dpkg
C /var/lib/dpkg/lock
其中A代表新添加的
其中C代表改变的
其中D代表删除的
技术讨论群:190029784
页:
[1]