如何COPY Docker中上一级的所有目录?

How to COPY all directories in one level above in Docker?

我正在尝试使用 docker 文件创建图像。正如我从 public 个存储库中看到的那样,人们有一个名为 docker 的目录。所以我想将我所有的代码(基本上是整个 repo)复制到 docker 图像中。但是我找不到正确的方法。 (您可以在下面看到基本的文件结构。)

目录结构

所以主要有两个问题:

1- 如何复制上一层的所有文件和目录?

2- 这种方法是否可以作为最佳实践接受?

这是我目前的 docker 文件。

#This file is named as dockerfile
FROM continuumio/miniconda3
COPY . . #This line is probably faulty.
ADD environment.yml ./

RUN conda env create -f environment.yml
ENTRYPOINT [ "python","test.py"]

这取决于您调用 docker 构建命令的位置。如果你在 my_repo 目录中,你可以调用

docker build -f .\docker\Dockerfile .

在最后的 . 中,您将当前目录定义为构建上下文,在这种情况下,COPY 命令会将所有文件复制到容器中。

编辑:但是,为了便于处理和提高可读性,我会将 Dockerfile 置于 my_repo

级别