在使用 Docker
容器的时候可能会在容器之间进行数据拷贝的操作,但是容器与系统之间是隔离的,我们要如何操作呢?
这里给大家介绍两种数据共享的方式:
1. 使用 docker run -v
参数启动容器
在使用 docker run
启动容器时,加上 -v
参数,挂载主机数据卷到容器内。
假设我们有一个 chadou/nginx
的容器,我们将docker内的/wwwroot/
与本地 ./wwwroot/
进行共享,那么在启动的时候执行下面的命令:
docker run --name nginx-v1 -v ./wwwroot:/wwwroot -it chadou/nginx
2. 使用 docker cp
命令
docker 容器提供了 docker cp
命令来进行文件拷贝。
上传命令格式:
docker cp [OPTIONS] SRC_PATH CONTAINER:DEST_PATH
OPTIONS说明:
-L: 保持源目标中的链接
docker cp ./wwwroot/index.html nginx-v1:/wwwroot/
该命令意思是将本地 ./wwwroot
目录下的 index.html
文件拷贝到 docker 容器 nginx-v1
里面的 /wwwroot
目录下。
注意:目标容器可以是容器名或容器ID
下载命令格式:
docker cp [OPTIONS] CONTAINER:SRC_PATH DEST_PATH
docker cp nginx-v1:/wwwroot/index.html ./wwwroot/
和上传命令正好相反,执行上面的命令是将容器内的 index.html
文件拷贝到本地 ./wwwroot/
目录下。
其他
我们拷贝了文件到容器内,怎么才能知道是否成功呢?登陆到容器里面看一下吧
如何进入docker容器