Puncte:0

502 Bad Gateway cu NuxtJS și NGINX Proxy Companion

drapel cn

Încerc să configurez un proxy cu NGINX proxy companion, dar mă confrunt cu o eroare 502 Bad Gateway...

Iată docker-compose.yml meu:

  nuxtjs:
    construi:
      context: .
      dockerfile: docker/nuxtjs/Dockerfile
    mediu inconjurator:
      API_BASE_URL: fff.com
      VIRTUAL_HOST: fff.com
      LETSENCRYPT_HOST: fff.com
    porturi:
      - „8000:80”
    container_name: ${NUXTJS_CONTAINER_NAME}
    volume:
      - ./front:/usr/src/app/
      - /usr/src/app/node_modules

Dockerfile:

DE LA nodul:lts

# creați directorul de destinație
RUN mkdir -p /usr/src/app
WORKDIR /usr/src/app

# copiați aplicația, rețineți .dockerignore
COPIEAZĂ ./front /usr/src/app
RUN fire

# este necesară construirea, chiar dacă nu sunt necesare fișiere statice,
# deoarece construiește și serverul
RUN construirea firului

# expune 80 pe recipient
EXPUNEREA 80

# setați difuzarea aplicației la permisiv / atribuit
ENV NUXT_HOST=0.0.0.0
# setați portul pentru aplicație
ENV NUXT_PORT=80

# porniți aplicația
CMD [ „fir”, „dev”]

Și proxy-ul arată asta în jurnale:

*40 fără fluxuri live în timp ce vă conectați la amonte, client: myip, server: fff.com, cerere: „GET /favicon.ico HTTP/2.0”, în amonte: „http://fff.com-upstream/favicon.ico” , gazdă: „xxx.com”, referitor: „https://fff.com/”

Și conf a generat:

în amonte fff.com {
        # Nu se poate conecta la rețeaua „webproxy” a acestui container
        # Intrare de rezervă
        server 127.0.0.1 jos;
}
Server {
        nume_server fff.com;
        asculta 80 ;
        access_log /var/log/nginx/access.log vhost;
        # Nu redirecționați HTTPS provocarea Let'sEncrypt ACME
        locație ^~ /.well-known/acme-challenge/ {
                auth_basic off;
                auth_request dezactivat;
                permite tuturor;
                root /usr/share/nginx/html;
                try_files $uri =404;
                pauză;
        }
        Locație / {
                returnează 301 https://$host$request_uri;
        }
}
Server {
        nume_server fff.com;
        asculta 443 ssl http2 ;
        access_log /var/log/nginx/access.log vhost;
        ssl_session_timeout 5m;
        ssl_session_cache shared:SSL:50m;
        ssl_session_tickets off;
        ssl_certificate /etc/nginx/certs/fff.com.crt;
        ssl_certificate_key /etc/nginx/certs/fff.com.key;
        ssl_dhparam /etc/nginx/certs/fff.com.dhparam.pem;
        ssl_capsare activată;
        ssl_stapling_verify on;
        ssl_trusted_certificate /etc/nginx/certs/fff.com.chain.pem;
        add_header Strict-Transport-Security "max-age=31536000" întotdeauna;
        includ /etc/nginx/vhost.d/default;
        Locație / {
                proxy_pass http://fff.com;
        }
}

Are cineva vreo idee?

Mulțumiri

Michael Hampton avatar
drapel cz
Ce este `fff.com-upstream`?
FindL avatar
drapel cn
Sincer, nu știu, a fost generat de nginx-companion în think
Puncte:0
drapel cn

Rezolvat: am uitat să atașez proxy-ul la rețeaua webproxy....

Puncte:0
drapel in

Ta porturi definiția este greșită. Mapați portul 80 de la container la portul 8000 de pe gazdă, dar containerul expune portul 8000.

porturi:
  - „80:8000”

Sau, dacă doriți să păstrați portul 8000:

porturi:
  - „8000”
FindL avatar
drapel cn
Tocmai am editat Dockerfile pentru a expune 80 pe container Încă nu funcționează :/ Aceeași eroare

Postează un răspuns

Majoritatea oamenilor nu înțeleg că a pune multe întrebări deblochează învățarea și îmbunătățește legătura interpersonală. În studiile lui Alison, de exemplu, deși oamenii își puteau aminti cu exactitate câte întrebări au fost puse în conversațiile lor, ei nu au intuit legătura dintre întrebări și apreciere. În patru studii, în care participanții au fost implicați în conversații ei înșiși sau au citit transcrieri ale conversațiilor altora, oamenii au avut tendința să nu realizeze că întrebarea ar influența – sau ar fi influențat – nivelul de prietenie dintre conversatori.