采取以下简化示例:
services:
app:
image: alpine
env_file: config.env
entrypoint:
- /bin/sh
- -c
- 'echo "Var is: $$MY_VAR"'
我在config.env
本地使用本地开发设置,config.env
在服务器上使用生产设置。
当我使用docker-compose -H [email protected] up --build -d
时,它使用我的本地 config.env 而不是服务器上的。我宁愿不在我的存储库中存储特定于环境的配置,但是 docker 文档中推荐的方法都涉及在您使用的同一台机器上创建单独的.yml
文件或文件。.env
docker-compose
所以,我的问题是,我如何在我的服务器上存储配置,并docker-compose
在我的开发机器上使用来部署?还是我最好将 repo 上传到服务器并在docker-compose
那里运行,以便我可以使用远程 env 文件?