我有下面的码头文件。我正在尝试创建一个运行python测试服务器的docker映像。
FROM ubuntu:16.04
LABEL Author="My Name"
LABEL E-mail="myname@gmail.com"
LABEL version="1.0.0"
ENV FLASK_DEBUG True
RUN apt-get update -y && \
apt-get install -y python-pip python-dev
# We copy just the requirements.txt first to leverage Docker cache
COPY ./requirements.txt /app/requirements.txt
RUN mkdir /data
RUN mkdir /dev/shm/download
ADD download/file.out /data/
VOLUME /data
RUN ln -sf /data/file.out /dev/shm/download/file.out
WORKDIR /app
RUN pip install -r requirements.txt
COPY . /app
ENTRYPOINT [ "python" ]
CMD [ "test_server/app.py" ]我有一个文件file.out,需要进入码头容器。我还想创建一个指向该文件的符号链接/dev/shm/download。
当我运行dockerfile时,我会得到以下错误。
ln: failed to create symbolic link '/dev/shm/download/file.out': No such file or directory
The command '/bin/sh -c ln -sf /data/file.out /dev/shm/download/file.out' returned a non-zero code: 1发布于 2020-02-25 05:16:25
/dev/shm是每个默认的卷。因此,您不能按照停靠器文档中的说明,在此期间向该文件夹添加数据。
从Dockerfile中更改卷:如果任何构建步骤在声明后更改卷内的数据,则这些更改将被丢弃。
你需要使用不同的位置。其他的东西,而不是/dev/shm作为你的符号。如果这不是一个选项,您可以在启动时创建符号链接。
资料来源:* https://docs.docker.com/engine/reference/builder/#notes-about-specifying-volumes * https://sondnm.github.io/blog/2018/09/08/i-just-learnt-about-/dev/shm/
https://stackoverflow.com/questions/60387153
复制相似问题