docker数据卷

数据卷:容器如何与宿主机之间进行数据共享

数据卷是一个供容器使用的特殊的目录,在容器中,和宿主机的目录进行映射,主机和宿主机都可以对目录中的文件进行修改,双方都同步生效。对镜像也没有影响,宿主机到容器实现数据迁移。

mysql 33066:3306

1.宿主机的目录和容器中目录进行挂载(映射关系)

docker run -itd --name test1 -v /opt/test1:/opt/test centos:7 /bin/bash

cd /opt

cd test1

echo "郭旗真大" > 123.txt

docker exec -it test1 bash

cd /opt/test

touch 456.txt

echo 456.txt

exit

cd /opt/test1

docker run -itd --name test2 -v /opt/test2:/opt/test:ro centos:7 /bin/bash

cd /opt/test2

ls

docker exec -it test2 bash

cd /opt

ls

2.容器和容器之间实现数据共享

test1 test2 可以有一个或者多个映射目录,实现数据互传,数据同步

数据卷容器:只提供挂载点,让另一方收集数据

docker run -itd --name test11 -v /opt/data1 -v /opt/data2 centos:7 /bin.bash

docker exec -it test11 bash

cd /opt

exit

docker run -itd --volumes-from test11 --name test12 centos:7 /bin/bash

cd /opt/data1

echo 123> 123

cd /opt/data2

echo 456 > 456

docker exec -it test12 bash

cd /opt

cat data/123

cat data/456

3.容器互联:两个容器之间实现网络通信

老版本:docker run -itd -P --name test111 centos:7 /bin/bash

docker run -itd -P --name test222 --link test111:test222 centos:7 /bin/bash

docker exec -it test111 bash

yum -y install net-tools

ifconfig

vim /etc/hosts

docker exec -it test111 bash

yum -y install net-tools

ifconfig

vim /etc/hosts

新版本:network自定义网络

docker run -itd -P --name test112 --network=mynetwork centos:7 /bin/bash

docker run -itd -P --name test113 --network=mynetwork centos:7 /bin/bash

docker exec -it test112 bash

docker exec -it test113 bash

你可能感兴趣的:(docker,容器,运维)