我必须虚拟化由三个组件组成的内部应用程序。每个组件都有其专用端口。 为方便起见,我想创建一个Dockercompose"公开"设置为var(曝光在docker-compose中折旧,因此不能使用),以便创建三个图像。
我创建了以下
Dockerfile:
FROM centos7
[...]
EXPOSE $ EXPOSE_PORT
ENTRYPOINT [" /entrypoint.sh"]
docker-compose.yml:
版本:" 3"
服务:
image:image1
[...]
环境:
EXPOSE_PORT:" 80"
depends_on:
- image2
- image3
image:image2
[...]
环境:
EXPOSE_PORT:" 1298"
image:image3
[...]
环境:
EXPOSE_PORT:" 1299"
但是当我运行docker stack deploy -test -c docker-compose.yml'时,端口没有正确设置,并且image1无法与image2和image3交换。
如何使用专用端口部署堆栈?