【问题标题】:Docker volume does not produce file in local-systemDocker 卷不会在本地系统中生成文件
【发布时间】:2020-10-13 15:02:57
【问题描述】:

我是 docker 卷的新手,并尽我所能在 docker 中处理文件并将文件保存在本地目录中以将其同步到 AWS S3。

这是我的带有--volume 的 docker-run 命令,它使用本地目录路径将其附加到容器。当我在本地系统(MacOS)上运行命令时。它在本地目录中创建一个文件(created_file.txt)

docker run -v /*/test_image:/src -t test python3 test_script.py --pick_path=/src/image_lenna.jpeg

这是我的 EC2 实例上相同的 docker-run 命令

docker run -v /home/ubuntu/test_file/test_image:/src -t test python3 test_script.py --pick_path=/src/image_lenna.jpeg

本地系统的输出:

远程系统中的输出:

Dockerfile 内容

FROM nginx

RUN apt-get update && apt-get install --no-install-recommends --no-install-suggests -y curl
RUN apt-get install unzip
RUN apt-get -y install python3
RUN apt-get -y install python3-pip
USER root
RUN ["apt-get", "install", "-y", "libsm6", "libxext6", "libxrender-dev"]


WORKDIR .
COPY requirements.txt .
RUN pip3 install -r requirements.txt
COPY test_script.py .
RUN echo "hello world"

我用来生成docker文件的命令是:

docker build -t test .

.指的是我的Dockerfile所在的文件夹

我不明白为什么没有在 EC2 实例上创建文件。我错过了什么吗?

【问题讨论】:

  • 你的头像是什么CMD?您能否包含生成您附加的两个图像文件的代码?
  • 这是简单的构建命令。我已经包含了

标签: docker amazon-ec2 dockerfile docker-volume docker-run


【解决方案1】:

这是一个愚蠢的错误。 python脚本中的写入路径也应该是docker卷中提到的路径。

docker run -v /home/ubuntu/test_file/test_image:/src -t test python3 test_script.py --pick_path=/src/image_lenna.jpeg

这里的本地路径附加到名为srcdocker volume。所以python脚本应该写入src文件夹。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-11-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-03-13
    • 2019-10-08
    相关资源
    最近更新 更多