Я пытаюсь разделить унаследованной системы в сочетании с HBase и модуля PHP в двух отдельных контейнерах со следующей Докер-Compose файла:перенаправление портов в докер-компоновать
version: '2'
services:
php:
image: my-legacy-php
volumes:
- ~/workspace/php:/workspace/php
ports:
- "80:80"
links:
- hbase
hbase:
image: dajobe/hbase
hostname: hbase-docker
ports:
- "43590-44000:43590-44000"
- "8085:8085"
- "2181:2181"
- "8080:8080"
- "16010:16010"
- "9095:9095"
- "9090:9091"
- "16020:16020"
- "16030:16030"
- "60000:60000"
volumes:
- ~/workspace/hbase-docker/data:/data
Я использую общественный hbase-docker изображение который использует порт 9090 для бережливости, в то время как мой устаревший модуль php ожидает подключения через порт 9091. Я попытался «отобразить» или «переслать» в файле docker-compose.yml
«9090: 9091» без недостатка. Я также попробовал атрибут expose
docker-compose, но он не принимает два порта (только один, который подвергается другим контейнерам). Как это сделать?
Я хочу, чтобы слушающий порт 9090 из Hbase контейнера будет выглядеть как 9091 из PHP контейнера (внутри)
Вы пытались использовать внешние ссылки? https://docs.docker.com/compose/compose-file/ – Xenwar
Отображение портов и атрибуты 'expose' эффективны только для привязки контейнера к хосту. Не для внутренних ссылок. – Selva