docker - 如何在 docker-compose 文件中获取和设置随机服务端口作为 env var?
问题描述
这是 docker-compose.yml 的示例:
# docker-compose.yml
version: '3'
services:
web:
image: ghost:latest
ports:
- 0:2368
environment:
url: http://ghost.localhost:30001
我想获取服务随机端口并在url
env 变量中设置如下:
url: "http://ghost.localhost:{{.Service.Port}}"
最终目标是在不手动设置端口的情况下部署多个堆栈。
docker stack deploy --compose-file=docker-compose.yml ghost1
docker stack deploy --compose-file=docker-compose.yml ghost2
docker stack deploy --compose-file=docker-compose.yml ghost3
这是可能的 ?
解决方案
不,这现在是不可能的。有一个功能请求,但它仍然是开放的(它已经超过 4 年了)。
推荐阅读
- c# - 当应该选择一个时,两个不同的 datagridview 行被选中
- excel - Excel VBA 将多个工作簿合并到一张工作表中
- powershell - 如何将下载的 CSV 数据从 Invoke-RestMethod 传输到 Import-CSV?
- database - 如何在postgresql中高效地遍历节点?
- javascript - 在内容安全策略中添加 url
- codeigniter - (CI 4)如何在控制器内重定向?
- google-bigquery - BigQuery:在函数内定义变量
- php - 使用 php mailer 通过 Gmail 发送 - SMTP 错误
- haskell - 证明一个新的单子实例的单子定律(可能的列表)
- javascript - 通过 jquery 将伪元素 CSS 添加到特定 id 也被应用于其他元素