bsmeding.nginx_docker
Nginx リバースプロキシヘルパー
NGINX リバースプロキシサーバー
この役割は、私の役割であるbsmeding.dockerを使って、DockerがインストールされたUbuntuのLinuxディストリビューションでテストされています。
Dockerコンテナをプラットフォームにデプロイする際のフロントエンドとして使用されていました。
デフォルトのイメージはLinuxserverからのものです: https://docs.linuxserver.io/images/docker-nginx
現在、利用できる設定オプションのセットは限られています。後で追加されます。
リバースプロキシ設定
各コンテナ(または他のサービス/サーバー)について、変数リストnginx__proxy_confs_subdomain
を使ってプロキシ設定を追加できます。コンテナへ転送する場合は、同じDockerネットワークに接続し、簡単に名前解決とセキュリティを確保してください。
この例では、ポート80のdash.example.com
への受信リクエストを、ポート9090のdashboard
という名前のコンテナに転送します(httpでポート80)。
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
サイトファイル
ウェブサイトのディレクトリをコピーしたい場合は、/files/nginx/sites/<site_directory>
または複数の異なるサイトを持つサーバーをデプロイする際は、/files/nginx/<inventory_hostname>/sites/<site_directory>
に置いてください。
サイト設定ファイル
特定のサイト設定ファイルをコピーしたい場合は、プレイブックディレクトリの/files/nginx/site-confs/
に置いてください。それらはnginxサイト設定ファイル<site.conf>でなければなりません。
または、ホストの設定を分けるために/files/nginx/<inventory_hostname>/site-confs/
に置いてもかまいません。
https / ssl / 証明書
証明書が必要な場合は、プレイブックディレクトリのfiles/nginx/certs/
に配置し、website_url.crt
とwebsite_url.key
という名前を付けてください。
鍵ファイルがパスフレーズで保護されているときは、サブドメイン変数にこれを追加してください。これにより、ansible-vaultで保護されます。
nginx__proxy_confs_subdomain:
- server_name: dash.example.com
listen: 80
listen_https: 443 # httpsを有効にする必要があります
cert_key_passphrase: 'sbsta261da' # 証明書.keyファイルのパスフレーズの例。設定されていなければこの変数は設定しないでください。
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