Am o aplicație docker și funcționează pe http:// localhost:8000. Această aplicație funcționează și pe http://my_domain.com. Aș dori să rulez aplicația mea docker prin reverse proxy nginx. Prin urmare, am făcut următoarele.
$ docker run -d --rm -p 8000:8000 my_app
$ curl http://localhost:8000
$ sudo nano /etc/nginx/sites-available/my_domain.com
Fișierul my_domain.com conține următoarele:
Server {
nume_server domeniul_meu.com;
index index.html index.htm;
access_log /var/log/nginx/my_app.log;
error_log /var/log/nginx/my_app-error.log eroare;
Locație / {
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $schema;
proxy_set_header X-Real-IP $adresă_la distanță;
proxy_set_header Gazdă $http_host;
proxy_pass http://127.0.0.1:8000;
proxy_redirect dezactivat;
}
}
Apoi, am scris următoarele pe linia de comandă:
$ sudo ln -s /etc/nginx/sites-available/my_domain.com /etc/nginx/sites-enabled/my_domain.com
$ sudo nginx -t
$ sudo nginx -s reîncărcare
Totul pare în regulă, dar când vizitez http://domeniul_meu.com, văd pagina implicită nginx cu: Bun venit la nginx! Din păcate, nu pot vedea aplicația mea rulând așa cum am văzut-o pe http:// localhost:8000 sau pe http://my_domain.com înainte de operația de mai sus.