我有两个容器映像,并使用" docker -compose -d“编写和运行对接器。这个很好用。我想在另一个港口运行相同的容器映像,比如8081。我们能否将端口映射作为命令行参数进行传递--复合-port novnc :8081:8080?如何动态地将端口映射传递到坞-组合命令?
version: '2'
services:
ide:
image: myApp
image: myImage:latest
environment:
- DISPLAY=novnc:0.0
depends_on:
- novnc
networks:
- x11
novnc:
image: myImageTwo:latest
environment:
- DISPLAY_WIDTH=1600
- DISPLAY_HEIGHT=968
ports:
- "8080:8080"
networks:
- x11
networks:
x11:发布于 2020-01-21 14:33:36
在你的码头使用${VAR} -Compose.yml
例如:
version: '2'
services:
apache:
image: httpd:2.4
volumes:
- .:/usr/local/apache2/htdocs/
ports:
- ${APP_PORT}:80然后使用环境变量:
$ export APP_PORT=8080
$ docker-compose up或内联版本:
$ APP_PORT=8080 docker-compose up发布于 2020-01-21 14:10:16
您可以使用.env文件来完成它。
例如,您将得到这样的内容:
$ cat .env
TAG=v1.5
$ cat docker-compose.yml
version: '3'
services:
web:
image: "webapp:${TAG}"在该示例中,可以看到标记值位于env文件中设置的变量中。
您可以在官方医生中找到更多信息。
发布于 2020-01-21 14:25:47
将“端口”部分更改为:
ports:
- "${MY_PORT}:8080"然后只需使用MY_PORT=8081 docker-compose up -d
https://stackoverflow.com/questions/59842614
复制相似问题