在CLI上指定服务容器的主机名?
使用docker-compose,我可以指定服务容器的主机名。
泊坞窗,compose.yml:
version: "3" services: db: image: library/mysql:latest app: build: . hostname: my-hostname
而不是在撰写文件中定义这个,可以在docker-compose build
或者docker-compose up
阶段将它作为CLI的一个选项传入吗?
docker-compose
支持环境variables。 所以你可以通过它
version: "3" services: db: image: library/mysql:latest app: build: . hostname: ${APP_HOSTNAME}
然后使用
APP_HOSTNAME=myapp docker-compose up
要么
export APP_HOSTNAME=myapp docker-compose up
编辑-1
如果你想在环境中使用默认值也是可能的
可以使用典型的shell语法提供内联缺省值:
如果VARIABLE在环境中未设置或为空,$ {VARIABLE:-default}将评估为默认值。 只有在环境中未设置VARIABLE时,$ {VARIABLE-default}才会计算为默认值
所以你可以更新你的docker-compose
到下面,它将在所有的terminal工作
version: "3" services: db: image: library/mysql:latest app: build: . hostname: ${APP_HOSTNAME:-myapp}