在docker-compose文件中设置$ PROJECT_NAME?

我为多个项目使用相同docker-compose.yml文件。 我真的很懒,所以我不想用docker-compose -p $PROJECT_NAME up来启动它们。

从Docker版本17.06.0开始,可以直接在docker-compose.yml文件中设置variables。

现在我们可以使用自定义项目名称和设置.env文件

COMPOSE_PROJECT_NAME=SOMEPROJECTNAME

这不是灵活的,但总比没有好。 目前有一个公开的问题 ,作为一个build议。

您可以将它们添加为您的环境variables,这些环境variables可以通过您使用泊坞窗撰写您的容器的会话进行访问。

也就是说,如果你想在你的docker-compose.yaml的某个地方使用$ PROJECT_NAME,那么如果这个variables在你的会话中有一个值,那么它将被拾取。

在yaml里面,你可以把它分配给任何你想要的东西。 你想作为一个命令行参考一些脚本,即使这也是可能的。 即

 working_dir: /opt command: /bin/bash -c './script.sh ${PROJECT_NAME}' volumes: - /var/run/:/host/var/run/ 

我使用docker版本:docker版本17.09.0-ce,构buildafdb6d4docker构成版本:docker构成版本1.14.0,构buildc7bdf9e