目前的方法是写一个 docker-compose.yml 的模本文件,然后去替换里面的相关参数,例如模板文件如下:
version: '2'
services:
db:
image: mysql
container_name: $db_name
networks:
- app_net
web:
build: ./web
expose:
- "80"
- "443"
- "8080"
networks:
app_net:
ipv4_address: $web_ip
container_name: $web_name
depends_on:
- db
links:
- db
networks:
app_net:
driver: bridge
ipam:
driver: default
config:
- subnet: $subnet
gateway: $gateway
模板文件通过 python string 的 Template 进行变量替换,通过替换 subnet、gateway 以及 container_name、web_ip 的方法来生成不同的 docker-compose.yml 文件,感觉这种方式不是很优雅,有没有更好的方案呢?
这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。
V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。
V2EX is a community of developers, designers and creative people.