-1

“COPY”指令是否覆盖dockerfile中的另一个“COPY”??

我的django容器工作正常,这意味着它复制了“pyproject.toml”、“poeture.lock”并成功安装了所有依赖项,但问题是,当我进入djangocontainer时,我在“root”目录中看不到“pyprocest.toml”和“poetry.lock“,这怎么可能?为什么我需要在安装依赖项之前在容器中访问它们,是因为我在“pyproject.toml”中也有pytest配置。Bellow是我的dockerfile,接下来是容器中的文件系统。

来自蟒蛇:3.12.1-高山ENV PIP_DISABLE_PIP_VERSION_CHECK检查1ENV PYTHONDONTWRITEBY代码1ENV PYTHONBUFFERED 1号机组ENV DJANGO_SUPERUSER_USERNAME=管理员ENV DJANGO_SUPERUSER_PASSWORD=管理员ENV公司[电子邮件保护]WORKDIR/root复制/pyproject.toml/poetry.lock/rootRUN apk更新\apk add--无缓存python3-dev\海湾合作委员会\musl-dev公司\libpq-dev软件RUN python-m pip安装--升级pip\&&pip安装-升级诗歌\&&诗歌配置virtualenvs.create false\&&诗歌锁——无更新\&&诗歌安装--无需--无需交互--无需副本/root<--*可能会覆盖此行*CMD[“python”,“manage.py”,“runserver”,“0.0.0.0:8000”]

容器中没有“pyproject.toml”和“poeture.lock”。

buy-armenian-py3.12arman:~/桌面/buy_armenian$make enter-backanddocker exec-it后端sh~#密码/根~#ls-la总计52drwxrwxr-x 7 1000 1000 4096 5月31日06:25。drwxr-xr-x 1根4096 5月31日06:43。。-rw---------1根106 5月31日07:06.ash_history-rw-rw-r--1 1000 1000 6 5月30日15:31.dockerignore-rw-rw-r--1 1000 1000 158 5月23日07:38.env-rw-rw-r--1 1000 1000 180 4月14日20:10.env.distdrwx-------3 1000 1000 4096 5月16日16:06.pytest_cache-rw-rw-r--1 1000 1000 712 5月31日06:47 Dockerfiledrwxrwxr-x 2 1000 1000 4096 5月25日07:51 __pycache__drwxrwxr-x 4 1000 1000 4096 5月23日08:56 apidrwxrwxr-x 4 1000 1000 4096 5月24日06:28 config-rwxrwxr-x 1 1000 1000 668 5月23日12:40经理.pydrwxrwxr-x 5 1000 1000 4096 5月25日05:22测试

所以我的问题是——如何将它们包含在容器的“根”目录中?此外,我要强调的是,相对于dockerfile的位置,“pyproject.toml”和“poeture.lock”存在于父目录中,但我似乎管理得很正确,因为我说过容器工作正常,如果docker不复制“pyprogram.toml”和”poeture.lock“,这是不可能的。

PS(聚苯乙烯):我甚至试图添加第三个“COPY”指令复制/pyproject.toml/poetry.lock/root,但同样的结果是,它们在容器“根”目录中丢失。

来自蟒蛇:3.12.1-高山ENV PIP_DISABLE_PIP_VERSION_CHECK检查1ENV PYTHONDONTWRITEBY代码1ENV PYTHONBUFFERED 1号机组ENV DJANGO_SUPERUSER_USERNAME=管理员ENV DJANGO_SUPERUSER_PASSWORD=管理员ENV公司[电子邮件保护]WORKDIR/root复制/pyproject.toml/poetry.lock/rootRUN apk更新\apk add--无缓存python3-dev\海湾合作委员会\musl-dev公司\libpq-dev软件RUN python-m pip安装--升级pip\&&pip安装--升级诗歌\&&诗歌配置virtualenvs.create false\&&诗歌锁——无更新\&&诗歌安装--无需--无需交互--无需副本/复制/pyproject.toml/poetry.lock/root<---*添加了这个*CMD[“python”,“manage.py”,“runserver”,“0.0.0.0:8000”]
1
  • 这个副本指令应该是加性的(与普通Unix一样内容提供商). 你不能副本来自父目录的文件,但这应该会给您带来某种错误。你实际上是如何启动容器的?你有装卸工运行-v隐藏图像的选项/根目录? 评论 5月31日9:37

0

重置为默认值

您的答案

单击“发布您的答案”,表示您同意我们的服务条款并确认您已阅读我们的隐私政策.