[Docker] Windows 宿主环境下,共享或上传文件到容器的方法
需求如题。
解决方案1 - 挂载目录(适用于创建新的容器)
格式
-v 容器目录 或 -v 本地目录:容器目录
范例
Linux宿主环境下:使用镜像 nginx:latest,以后台模式启动一个容器,将容器的 80 端口映射到主机的 80 端口,主机的目录 /data 映射到容器的 /data。
docker run -p 80:80 -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.html
https://www.runoob.com/docker/docker-run-command.html
解决方案2 - 拷贝文件(适用于已创建完的容器)
1. 启动容器,配置或确认文件接收路径
docker ps -a docker start 容器ID或容器名 docker exec -it 容器ID或容器名 bash mkdir demo
2. 关闭容器
docker stop 容器ID或容器名
3. 执行拷贝
docker cp D:\FileNeedUploadToDocker.txt 容器ID或容器名:/opt/demo docker start 容器ID或容器名 docker exec -it 容器ID或容器名 bash cd opt/demo/ dir
参考资料