Назад | Перейти на главную страницу

502 Плохой шлюз / сбой (111: соединение отклонено) при подключении к восходящему потоку

У меня есть следующий docker-compose xml

web:
  build: nginx/.
  container_name: nginx
  ports:
    - "80:80"
  links:
    - "openchain"
  restart: always
wallet:
  build: wallet/.
  container_name: wallet
  ports:
    - "81:81"
  restart: always
  read_only: false
  volumes:
    - ./www:/usr/share/nginx/html:rw
  working_dir: /user/share/nginx/html
openchain:
  build: openchain/.
  ports:
    - "8080"
  volumes:
    - ./data:/openchain/data
  restart: always

И следующая конфигурация для сети и кошелька соответственно

worker_processes 4;

events { worker_connections 1024; }

http {
    server {
        listen 80;

        location / {
            proxy_pass http://127.0.0.1:8080/;

            proxy_http_version 1.1;
            proxy_set_header Upgrade $http_upgrade;
            proxy_set_header Connection "upgrade";
        }
    }
}

и

worker_processes 4;

события {worker_connections 1024; }

http {

server {
    listen 81;

    location / {
        root /usr/share/nginx/html;
    }
}

}

когда я запускаю docker ps, я получаю

    05e351c8f8db        openchain_web         "nginx -g 'daemon off"   5 seconds ago       Up 5 seconds        0.0.0.0:80->80/tcp, 443/tcp    nginx
    e7401ea7c5bc        openchain_wallet      "nginx -g 'daemon off"   5 seconds ago       Up 5 seconds        80/tcp, 443/tcp,
0.0.0.0:81->81/tcp   wallet
    40439fdb1c69        openchain_openchain   "dotnet openchain.dll"   5 seconds ago       Up 5 seconds        0.0.0.0:32774->8080/tcp        openchain_openchain_1

Но когда я пытаюсь получить доступ к порту openchain_openchain через прокси openchain_web, я получаю сообщение об ошибке

Я новичок в докере, поэтому не уверен, что правильно проксирую с помощью nginx

Вы можете сказать мне, что я сделал не так?

P.S. Я могу получить доступ к кошельку нормально

Я использовал эту конфигурацию в своей конфигурации NGINX, где appsrv - это имя службы docker-compose.yml для образа fastcgi.

server {

    #listen 80 default_server;
    listen 80;
    #server_name xxxxxxxxx.com;
    index index.php index.html;
    root /var/www/html;

    location ~ [^/]\.php(/|$) {
        fastcgi_split_path_info  ^(.+\.php)(/.+)$;
        fastcgi_index            index.php;
        fastcgi_pass             appsrv:9000;
        include                  fastcgi_params;
        fastcgi_param   PATH_INFO       $fastcgi_path_info;
        fastcgi_param   SCRIPT_FILENAME $document_root$fastcgi_script_name;
    }

    client_max_body_size 200M;

}