Puncte:0

Cum să nginx + proxy_pass în containerul docker cu ssl?

drapel de

Vreau să deservesc mai multe site-uri pe serverul meu. Fiecare site pe care presupun că trebuie să împacheteze ca build docker-compose, fiecare are propriul său nginx, care ascultă un singur port

Am un site cu numele gazdă site1.com. Docker Compose expune portul 81:

...
Servicii:
  web:
    imagine: nginx
    ...
    porturi:
      - „81:443”
    ...
...

Și clientul nginx (în interiorul containerului) ascultă totul pe 443 și are toate setările ssl

Server {
        asculta 443 ssl;

        ssl_certificate /etc/letsencrypt/fullchain1.pem;
        ssl_certificate_key /etc/letsencrypt/privkey1.pem;
    
        #...
        # și orice altceva
}

Și aici este gazda nginx, care doar trece de la portul 80 la 81 în funcție de server_name:

Server {
        asculta 80;
        asculta [::]:80;

        nume_server site1.com;

        Locație / {
                proxy_pass https://localhost:81;
        }
}

Deocamdată funcționează. Dar este nesigur. Așa că încerc să adaug 443 de redirecționare.

Server {
        asculta 443;
        asculta [::]:443;
        nume_server bederdinov.me;

        Locație / {
                proxy_pass https://localhost:81;
        }
}

Nginx repornește bine, dar când merg la https://site1.com Primesc un ERR_SSL_PROTOCOL_ERROR

Pare destul de evident - gazda nginx încearcă să servească cererea cu ssl, dar numai clientul docker nginx știe cum să o facă

Cum pot spune gazdei nginx că nu trebuie să facă nimic, ci doar să transmită toată munca clientului nginx? Sau poate există un alt software de server pe care îl pot folosi pentru această sarcină?

Puncte:0
drapel in

Terminarea SSL este gestionată de nginx în afara containerului. Trebuie să configurați opțiunile SSL acolo. Nu este nevoie să configurați SSL în interiorul containerului, atâta timp cât acesta rulează pe aceeași gazdă ca proxy-ul invers.

drapel de
Singurul motiv este să stochez configurația ssl în depozitul meu de proiecte în loc să o recreez de fiecare dată când îmi mut proiectul pe alt server. Dar poate mă gândesc prea mult)

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.