我是码头工人的新手。
这是我简单的docker-compose文件。
version: '3.4'
services:
web:
image: 'myimage:latest'
build: .
ports:
- "5265:5265"
environment:
- NODE_ENV=production
要运行它,我通常使用docker-compose up
命令。在运行docker-compose时,我可以将NODE_ENV变量更改为任何内容吗?
例如:
docker-compose up -x NODE_ENV=staging
使用docker-compose run
,您可以管理服务但不能完整堆栈。对于一次性命令很有用。
$ docker-compose run -d -e NODE_ENV=staging web
Ref - https://docs.docker.com/compose/reference/run/
要么
我现在可以看到最好的方法是在执行docker-compose up
之前使用shell并导出环境变量,如下所示 -
$ export NODE_ENV=staging && docker-compose up -d
你的docker-compose看起来如下所示 -
version: '3.4'
services:
web:
image: 'myimage:latest'
build: .
ports:
- "5265:5265"
environment:
- NODE_ENV=${NODE_ENV}