два docker-compose: как подключиться из одного приложения к другому
Есть docker-compose.yml первого веб-приложения, в котором есть Nginx:
version: '3'
services:
nginx:
image: nginx:alpine
hostname: nginx
restart: always
volumes:
# config
- ./nginx/conf.d:/etc/nginx/conf.d
# logs
- ./var/log/nginx:/var/log/nginx
# sites
- /home/sitest/www:/var/www
env_file:
- .env
ports:
- 80:80
- 443:443
command: /bin/sh -c "exec nginx -g 'daemon off;'"
Тут Nginx слушает 80 и 443 порты и обслуживает первое приложение.
Есть также второе веб-приложение, которое также запускается через docker-compose и построено на основе Laradock, в нем также есть свой Nginx.
nginx:
build:
context: ./nginx
args:
- CHANGE_SOURCE=${CHANGE_SOURCE}
- PHP_UPSTREAM_CONTAINER=${NGINX_PHP_UPSTREAM_CONTAINER}
- PHP_UPSTREAM_PORT=${NGINX_PHP_UPSTREAM_PORT}
- http_proxy
- https_proxy
- no_proxy
volumes:
- ${APP_CODE_PATH_HOST}:${APP_CODE_PATH_CONTAINER}${APP_CODE_CONTAINER_FLAG}
- ${NGINX_HOST_LOG_PATH}:/var/log/nginx
- ${NGINX_SITES_PATH}:/etc/nginx/sites-available
- ${NGINX_SSL_PATH}:/etc/nginx/ssl
ports:
- "${NGINX_HOST_HTTP_PORT}:80"
depends_on:
- php-fpm
networks:
- frontend
- backend
Тут также используется 80 порт, который через ${NGINX_HOST_HTTP_PORT} открыт для хост-машины как 8080.
Вопрос: как из первого веб-приложения обратиться ко второму по HTTP?
Хочу провернуть что-то похожее на это:
# входим в "первый" nginx
docker-compose exec nginx sh
# внутри вводим хост и получаем данные
wget http://хост-первого-приложения:8080