Bra*_*son 18 docker docker-volume
我有一个 Docker 镜像a,它对一组给定的文件执行一些逻辑。在本地运行时,我开始a如下:
docker run -v /home/Bradson/data:/data a
Run Code Online (Sandbox Code Playgroud)
这完成了它的工作。
现在我想a在远程 Docker 守护进程上运行:
DOCKER_HOST=tcp://remote_host:2375 docker run -v /home/Bradson/data:/data a
Run Code Online (Sandbox Code Playgroud)
我现在收到/data不包含任何内容的错误,很可能是因为/home/Bradson/data远程主机上不存在。
我该如何处理?我应该首先scp /home/Bradson/data访问远程主机上的某个目录并在-v选项中引用该目录吗?是否有纯粹的 Docker 方法?
请注意,我希望/home/Bradson/data在运行时可用,而不是在a. 因此我使用了该-v选项。
Bra*_*son 10
这是对我自己问题的回答。
我发现了以下纯 Docker 方法。我正在寻找一种直接将文件复制到卷的方法,但由于某种原因似乎不受支持?
但是,您可以将文件复制到容器。所以以下工作:
DOCKER_HOST=tcp://remote_host:2375 docker volume create data-volume
DOCKER_HOST=tcp://remote_host:2375 docker create -v data-volume:/data --name helper busybox true
DOCKER_HOST=tcp://remote_host:2375 docker cp /home/Bradson/data helper:/data
DOCKER_HOST=tcp://remote_host:2375 docker rm helper
DOCKER_HOST=tcp://remote_host:2375 docker run -v data-volume:/data a
Run Code Online (Sandbox Code Playgroud)
这受到/sf/answers/2622874621/ 的启发。
| 归档时间: |
|
| 查看次数: |
6745 次 |
| 最近记录: |