在容器共用volumes文章中我们假设启动了两个容器new1 和 new2 ,而且共用一个volumes,其内容为/cookbook/foobar 这个文件。
以下步骤我们将完成从容器new1 拷贝文件foobar到宿主机,更改文件内容后 拷贝到容器 new2 ,然后删除宿主机的本地文件,因为new1 和 new2 是共享volumes,所以我们再次拷贝new1 的foobar 文件下来,应该看到我们修改过的foobar
已有的两个容器,共享volumes:
[root@iZj6c4kga39y2z70xmt5y9Z ~]# docker ps -a
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
6624d93570e3 ubuntu:14.04 "/bin/bash" 15 minutes ago Up 3 seconds new2
ec7ad2ad04c7 ubuntu:14.04 "/bin/bash" 16 minutes ago Up 15 minutes new1
拷贝文件:
[root@iZj6c4kga39y2z70xmt5y9Z ~]# docker cp new1:/cookbook/foobar .
[root@iZj6c4kga39y2z70xmt5y9Z ~]# more foobar
123
456
442
999
[root@iZj6c4kga39y2z70xmt5y9Z ~]# echo "1111" >> foobar
[root@iZj6c4kga39y2z70xmt5y9Z ~]# docker cp foobar new2:/cookbook/foobar
[root@iZj6c4kga39y2z70xmt5y9Z ~]# rm -f foobar
[root@iZj6c4kga39y2z70xmt5y9Z ~]# docker cp new1:/cookbook/foobar .
[root@iZj6c4kga39y2z70xmt5y9Z ~]# cat foobar
123
456
442
999
1111