我有一个容器,它为我生成一个mp4文件,在容器脚本完成后,我想下载/复制到我的主机系统。
我所做的就是在调用sleep 2m之前在entrypoint.sh的末尾添加一个exit 0 (我知道这有点麻烦),这给了我2分钟的时间来运行下面的命令来下载mp4文件。
docker cp gource_container:/output/generated.mp4 ./
当我手工操作时,这很好,但我的目标是通过bash脚本自动运行它。
在容器退出后,有任何方法将文件发送到我的主机系统吗?
在没有sleep的容器完成后运行cp命令时,会得到以下错误:
$ docker cp gource_container:/output/generated.mp4 ./
Error: No such container:path: gource_container:/output/generated.mp4发布于 2020-08-26 15:25:17
一个可能的解决方案是在从映像创建容器时挂载本地工作目录,然后将文件复制到:
示例Dockerfile:
FROM ubuntu
RUN echo 'foo' > /foo.txt示例命令:
# Build a Docker image and tag it test
$ docker build -t test .
# Launch a Docker container from the test image,mount the working directory to the /data directory on the container then copy the file of interest
$ docker run --rm -it -v $(pwd):/data test cp /foo.txt /data
# Inspect file locally
$ cat ./foo.txt
foohttps://stackoverflow.com/questions/63600640
复制相似问题