【问题标题】:Unable to create folder inside docker container无法在 docker 容器内创建文件夹
【发布时间】:2021-12-28 10:07:12
【问题描述】:

我正在尝试在我的 docker 容器中的位置 (/usr/local/lib/python2.7/site-packages/ip360da) 创建一个文件夹(/data/connect),为此,我已经提到了该步骤在我的 dockerfile 中(RUN mkdir -p /usr/local/lib/python2.7/site-packages/ip360da/data/connect),但不知何故,这个特定的文件夹没有直接在其中创建,这是我的 dockerfile。

FROM python:2.7.18 as build
WORKDIR /build

COPY config/requirements.txt \
 config/test.json \
 builddir/.netrc \
 ./
RUN mkdir -p /usr/local/lib/python2.7/site-packages/ip360da/data/connect
COPY config/config.json /usr/local/lib/python2.7/site-packages/ip360da/data/connect

##############################################################
FROM python:2.7.18-slim

WORKDIR /app

COPY --from=build /build /app
RUN mv .netrc ~ && \
apt-get update && \
apt-get upgrade --assume-yes && \
# Used by Pipeline to differentiate from manually installed packages
apt list --installed >/tmp/preinstalled-packages 2>/dev/null  && \
apt-get clean && \
groupadd --gid 2000 tripwire && \
useradd --system --uid 2000 --gid tripwire tripwire

RUN pip install -r /app/requirements.txt

COPY scripts/daemon.py /usr/local/lib/python2.7/site-packages/ip360da/utils
COPY scripts/mock.py /usr/local/lib/python2.7/site-packages/ip360da/vne

USER root:root

ENTRYPOINT sleep infinity

【问题讨论】:

  • 您正在使用多阶段构建。您在第一阶段图像中创建文件夹。只有多阶段中的最后一个阶段图像被创建为您可以在本地 docker 安装中使用的图像。

标签: python docker dockerfile


【解决方案1】:

您在构建的构建阶段创建目录。这并没有最终出现在最终图像中。只有 Dockerfile 中最后一条 FROM 语句之后的内容才会出现在映像中。

所以不是

RUN mkdir -p /usr/local/lib/python2.7/site-packages/ip360da/data/connect
COPY config/config.json /usr/local/lib/python2.7/site-packages/ip360da/data/connect

##############################################################
FROM python:2.7.18-slim

你应该这样做

##############################################################
FROM python:2.7.18-slim
RUN mkdir -p /usr/local/lib/python2.7/site-packages/ip360da/data/connect
COPY config/config.json /usr/local/lib/python2.7/site-packages/ip360da/data/connect

【讨论】:

    猜你喜欢
    • 2021-05-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-11-20
    • 2020-07-20
    • 1970-01-01
    相关资源
    最近更新 更多