Docker compose 找不到 $PWD 环境变量

新手上路,请多包涵

这是我的码头工人撰写:

 version: '2'
services:
  couchpotato:
    build:
        context: ./couchpotato
        dockerfile: Dockerfile
    ports:
     - 5050:5050
    volumes:
     - "${PWD}/couchpotato/data:/home/CouchPotato/data/"
     - "${PWD}/couchpotato/config:/home/CouchPotato/config/"

当我在 shell 中运行它时,在 docker-compose.yml 的目录中,我得到:

 WARNING: The PWD variable is not set. Defaulting to a blank string.

并且撰写以 PWD 为空开始。

我在文件中看不到任何错误,如下所示: https ://docs.docker.com/compose/environment-variables/

原文由 user6791424 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 1.6k
1 个回答

您不需要 ${PWD} 为此,您只需将路径设为相对路径,然后 compose 将扩展它(撰写路径与 docker run 处理的路径之间的一个主要区别)。

 version: '2'
services:
  couchpotato:
    build:
        context: ./couchpotato
        dockerfile: Dockerfile
    ports:
     - 5050:5050
    volumes:
     - "./couchpotato/data:/home/CouchPotato/data/"
     - "./couchpotato/config:/home/CouchPotato/config/"

至于为什么compose看不到这个变量,那要看你的shell了。 Compose 查找导出的环境变量、.env 文件的内容以及 docker-compose 命令的命令行标志。如果变量中的每一个都为空,您将收到该警告。

原文由 BMitch 发布,翻译遵循 CC BY-SA 3.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题