访问 docker 中的卷

Accessing Volumes in docker

我想访问我的 docker 容器中的外部目录 'web-app'。

考虑以下目录结构:

MyDcocker
   |-dockerFile
   |-web-app
        |-flask-web.py

我的 docker 文件中有以下几行:

VOLUME ["web-app"]
# Run flask-web (API) file
CMD ["python3","web-app/flask-web.py"]

当运行图像时,我得到错误:

python3: 无法打开文件 'web-app/flask-web.py': [Errno 2] 没有那个文件或目录

我认为该目录没有正确挂载。我该如何解决这个问题?

您将在 Dockerfile 中写入如何构建容器,而不是容器将如何与主机交互。

要从您的主机在您的容器中挂载一个目录,您有 2 个解决方案:

使用 docker 命令行:

docker run -v $(pwd)/web-app:/var/lib/web-app/ dck-image-name

与docker-组成

version: '2'
services:
  myservice:
    image: dck-image-name
    volumes:
      - ./web-app:/var/lib/web-app/