[Docker] Windows 宿主环境下,共享或上传文件到容器的方法

时间:2022-05-19 14:56:56

需求如题。

解决方案1 - 挂载目录(适用于创建新的容器

[Docker] Windows 宿主环境下,共享或上传文件到容器的方法

格式
-v 容器目录 或 -v 本地目录:容器目录

范例
Linux宿主环境下:使用镜像 nginx:latest,以后台模式启动一个容器,将容器的 80 端口映射到主机的 80 端口,主机的目录 /data 映射到容器的 /data。

docker run -p : -v /data:/data -d nginx:latest

Windows宿主环境下:

docker run -it -v /d/WindowsFolder:/demo nginx:latest bash

挂载Windows文件夹到Docker容器中:
/d/WindowsFolder 对应宿主的文件夹路径 D:\WindowsFolder;
/demo 对应容器中目标路径;
在容器中修改 /demo 文件夹中的内容也就是修改宿主 D:\WindowsFolder 文件夹中的内容。

参考资料

https://www.cnblogs.com/ivictor/p/4834864.htmlhttps://www.runoob.com/docker/docker-run-command.html

解决方案2 - 拷贝文件(适用于已创建完的容器

1. 启动容器,配置或确认文件接收路径

docker ps -a
docker start 容器ID或容器名
docker exec -it 容器ID或容器名 bash
mkdir demo

[Docker] Windows 宿主环境下,共享或上传文件到容器的方法

2. 关闭容器

docker stop 容器ID或容器名

[Docker] Windows 宿主环境下,共享或上传文件到容器的方法

3. 执行拷贝

docker cp D:\FileNeedUploadToDocker.txt 容器ID或容器名:/opt/demo
docker start 容器ID或容器名
docker exec -it 容器ID或容器名 bash
cd opt/demo/
dir

[Docker] Windows 宿主环境下,共享或上传文件到容器的方法

参考资料

https://blog.csdn.net/hou_ge/article/details/102485691