По умолчанию, сеть для контейнеров работает в режиме --net="bridge", из-за чего прямая коммуникация с хостом будет сложнее. Если сервер на ноде не завернёте в контейнер, действия ниже придётся проводить и для деплоя туда.
В своём форке Laradock:
- Добавьте аргумент
NODE_SERVER_IP=${DOCKER_HOST_IP}
в секции args: для контейнера с nginx в docker-compose.yml
- В конфиге сайта перевод на Ноду делайте через
proxy_pass $node_upstream;
- Добавьте в
nginx/Dockerfile
: ARG NODE_SERVER_IP=127.0.0.1
- Там же к списку команд в RUN ещё одну строку (не забудьте в конце предыдущей
\
): && echo "upstream node_upstream { server ${NODE_SERVER_IP}:3000; }" >> /etc/nginx/conf.d/upstream.conf