Это первый раз, когда я спрашиваю что-нибудь о stackoverflow, но в основном у меня есть куча настроек Docker-контейнеров, которые хорошо работают с серверами nginx и Google DDNS.Недавно я попытался добавить контейнер nodejs для проекта, и я получаю сообщение об ошибке «Отказано в соединении».Странная часть в том, что IP-адрес, который я получаю на вышестоящем сервере, не имеет ничего общего с моим контейнером узлов.Вот мои настройки для всего:
docker-compose для nodejs:
version: '3.6'
services:
ddnsTestNode: #Change this line
image: 'dragoncube/google-domains-ddns'
container_name: ddnsTestNode #Change this line
volumes:
- type: bind
source: /media/MainData/ddns/test #Change this line
target: /config/google-domains-ddns.conf
- type: bind
source: /etc/localtime
target: /etc/localtime
networks:
- mainNetwork
testnode:
image: "node:8"
user: "node"
container_name: testnode
working_dir: /home/node/app
environment:
- NODE_ENV=development
volumes:
- /path/to/saved/node/app:/home/node/app
ports:
- 8081:8081
expose:
- "8081"
command: "npm start"
networks:
mainNetwork:
external: true
для NGINX (только соответствующий сервер):
server {
listen 443;
listen [::]:443;
server_name MY_SERVER_HIDDEN_FOR_QUESTION;
ssl_certificate /etc/nginx/cert.crt;
ssl_certificate_key /etc/nginx/cert.key;
ssl on;
ssl_session_cache builtin:1000 shared:SSL:10m;
ssl_protocols TLSv1 TLSv1.1 TLSv1.2 TLSv1.3;
ssl_ciphers HIGH:!aNULL:!eNULL:!EXPORT:!CAMELLIA:!DES:!MD5:!PSK:!RC4;
ssl_prefer_server_ciphers on;
client_max_body_size 10000G;
location / {
# Fix the “It appears that your reverse proxy set up is broken" error.
proxy_pass http://testnode:8081/;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection 'upgrade';
proxy_cache_bypass $http_upgrade;
}
}
Спасибо за вашу помощьзаранее я действительно пытался найти ответ, но не смог найти ничего с моей конкретной проблемой.Любой другой контейнер, такой как seafile или gitlab, работает с моей настройкой, но контейнер базового узла - нет.