подключение к локальной сети из сети docker network
У меня есть стек приложений на машине. Вот её часть:
version: "3"
services:
app:
image: 97f22a92e1d1
container_name: "httpd"
restart: unless-stopped
depends_on:
- db
links:
- db
volumes:
- /data/web/apache/www:/var/www/html/
labels:
- traefik.enable=true
- traefik.http.routers.httpd.rule=Host(`........`)
- traefik.http.routers.httpd.entrypoints=websecure
- traefik.http.routers.httpd.tls=true
- traefik.http.routers.httpd.tls.certresolver=myresolver
networks:
- web
db:
container_name: "db"
ports:
- 3306:3306
image: mysql:8.0
command: --default-authentication-plugin=mysql_native_password
restart: always
environment:
MYSQL_ROOT_PASSWORD: ...............
networks:
web:
ipv4_address: 172.18.0.2
При этом есть несколько приложений на Ubuntu Linux, которые должны сделать запись в базу данных, запущенную в контейнерную. Основная проблема в том, что они не запущены как контейнер. Другая проблема заключается в том, что после записи в базу данных из контейнера, PHP должен отправить запрос на порт, используемый приложением на хосте (который тоже не в контейнере). При этом, порт не должен быть открыт в наружу. Как мне пробросить хостовую сеть в докер? Спасибо!