Можно ли установить в файле docker compose контейнер информации о NetworkSetting в переменную окружения?
У меня есть следующий файл docker-compose.yml:
version: '3.7'
services:
sdt-proxy:
image: myimage
ports:
- 32770-32780:8181
environment:
- SERVER_PORT=8181
Itсопоставляет порт 8181 со случайным портом с 32770-32780.когда я запускаю контейнер с docker-compose up
, я могу видеть сопоставленный порт с docker inspect
:
.....
"NetworkSettings": {
"Bridge": "",
"SandboxID": "83e6933aaf7b09b8ae1238d3dbb71bdd495c14927a5a509b332afc17cda6d854",
"HairpinMode": false,
"LinkLocalIPv6Address": "",
"LinkLocalIPv6PrefixLen": 0,
"Ports": {
"8181/tcp": [
{
"HostIp": "0.0.0.0",
"HostPort": "32771"
}
]
},
...
Итак, я знаю, что внутренний порт 8181 (мое приложение работает внутри контейнера), сопоставленна порт 32771.
Мне нужно передать эту информацию, порт контейнера 32771 моему приложению, возможно ли сделать что-то подобное в файле docker-compose?
version: '3.7'
services:
sdt-proxy:
image: myimage
ports:
- 32770-32780:8181
environment:
- SERVER_PORT=8181
- MY_CONTAINER_PORT= <the running container port 32771>