首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >ln:未能创建符号链接'/dev/shm/download/file.out':ln docker容器

ln:未能创建符号链接'/dev/shm/download/file.out':ln docker容器
EN

Stack Overflow用户
提问于 2020-02-25 03:36:27
回答 1查看 1.3K关注 0票数 0

我有下面的码头文件。我正在尝试创建一个运行python测试服务器的docker映像。

代码语言:javascript
复制
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时,我会得到以下错误。

代码语言:javascript
复制
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
EN

回答 1

Stack Overflow用户

发布于 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/

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/60387153

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档