Bub*_*Tea 15 docker docker-compose
我有一个docker-compose.yml文件,在终端我是,typing docker-compose up [something]但我也想传递一个参数docker-compose.yml.这可能吗?我已经阅读了关于插值变量并尝试.yml使用${testval}然后在文件中指定变量docker-compose up [something] var="test"但是我收到以下错误:
警告:未设置testval变量.默认为空字符串.
错误:没有这样的服务:testval=test
Raf*_*oni 14
根据dnephin的回答,我创建了这个样本仓库,你可以将变量传递给docker-compose up.
用法很简单:
MAC/LINUXTEST= docker-compose up创建和启动两个app和db容器.然后api应该在端口3030上的docker守护程序上运行. TEST=DO docker-compose up创建和启动两个app和db容器.api应该执行文件npm run test内部package.json. $env:TEST="";docker-compose up创建和启动两个app和db容器.然后api应该在端口3030上的docker守护程序上运行. $env:TEST="do";docker-compose up创建和启动两个app和db容器.api应该执行文件npm run test内部package.json. Jor*_*tao 14
您需要确保两件事:
docker-compose.yml已宣布的环境变量。例如,services:
app:
image: python3.7
environment:
- "SECRET_KEY=${SECRET_KEY}"
Run Code Online (Sandbox Code Playgroud)
docker-compose up被调用时在环境中提供变量:SECRET_KEY="not a secret" docker-compose up
Run Code Online (Sandbox Code Playgroud)
请注意,这并不等同于在构建期间传递它们,因为不建议将机密存储在 docker 映像中。
dne*_*hin 10
您需要将变量作为环境变量传递:
testvar=test docker-compose up ...
Run Code Online (Sandbox Code Playgroud)
要么
export testvar=test
docker-compose up
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
22316 次 |
| 最近记录: |