bsmeding.nginx_docker
Pomocnik Nginx jako serwera proxy
Serwer proxy NGINX
Rola jest testowana na systemie Ubuntu z zainstalowanym Dockerem za pomocą mojej roli bsmeding.docker na dystrybucji Linuxa.
Służył jako frontend przy wdrażaniu kontenerów Docker na platformach.
Domyślny obraz pochodzi z Linuxserver: https://docs.linuxserver.io/images/docker-nginx
W tym momencie dostępny jest ograniczony zestaw opcji konfiguracyjnych. Więcej zostanie dodanych później.
Konfiguracja proxy
Dla każdego kontenera (lub innej usługi/serwera) możesz dodać konfigurację proxy za pomocą zmiennej nginx__proxy_confs_subdomain
. Jeśli przekierowujesz do kontenerów, podłącz je do tej samej sieci Docker dla łatwego rozwiązywania nazw i bezpieczeństwa.
Ten przykład przekieruje nadchodzące zapytania dla dash.example.com
na porcie 80 do kontenera o nazwie dashboard
na porcie 9090, port 80 (http)
nginx__proxy_confs_subdomain:
- server_name: dash.example.com
listen: 80
enable_ldap: false
enable_authelia: false
default_upstream_proto: http
default_upstream_url: dashboard
default_upstream_port: 9090
Pliki strony
Jeśli chcesz skopiować katalog witryny, umieść je w /files/nginx/sites/<site_directory>
lub /files/nginx/<inventory_hostname>/sites/<site_directory>
, gdy wdrażasz wiele serwerów z różnymi stronami.
Pliki konfiguracji strony
Jeśli chcesz skopiować specyficzne pliki konfiguracyjne strony, umieść je w swoim katalogu playbooka /files/nginx/site-confs/
. Muszą być w pliku konfiguracyjnym nginx w formacie <site.conf>
Lub w /files/nginx/<inventory_hostname>/site-confs/
do oddzielnych konfiguracji hostów.
https / ssl / Certyfikaty
Jeśli potrzebujesz certyfikatów, umieść je w swoim katalogu playbooka pod files/nginx/certs/
, nazwij je website_url.crt
i website_url.key
.
Gdy plik klucza jest zabezpieczony hasłem, dodaj to do zmiennej subdomeny, aby mógł być zabezpieczony przez ansible-vault.
nginx__proxy_confs_subdomain:
- server_name: dash.example.com
listen: 80
listen_https: 443 # musisz włączyć https
cert_key_passphrase: 'sbsta261da' # przykład hasła pliku cert.key, jeśli jest ustawione. W przeciwnym razie nie ustawiaj tej zmiennej
enable_ldap: false
enable_authelia: false
default_upstream_proto: http
default_upstream_url: dashboard
default_upstream_port: 9090
Manage and run the Nginx container from Linuxserver(default).
ansible-galaxy install bsmeding.nginx_docker