marcusianlevine.nginx-container
nginx-container
あなたのAnsible Containerプロジェクトにnginxサービスを追加します。サービスをインストールするには、次のコマンドを実行してください:
# 作業ディレクトリをAnsible Containerプロジェクトのルートに設定
$ cd myproject
# サービスをインストール
$ ansible-container install ansible.nginx-container
要件
- Ansible Container
- 既存のAnsible Containerプロジェクト。プロジェクトを作成するには、次のコマンドを実行します:
# 空のプロジェクトディレクトリを作成 $ mkdir myproject # 作業ディレクトリを新しいディレクトリに設定 $ cd myproject # プロジェクトを初期化 $ ansible-container init
ロール変数
STATIC_ROOT: /static
nginxによって提供される静的コンテンツのパス。
STATIC_LOCATION: {{ STATIC_ROOT }}/
このパターンに一致するリクエストは{{ STATIC_ROOT }}ディレクトリにエイリアスされます。通常は「/static/」または「/assets/」です。
PIDFILE_DIR: /run/nginx
nginxが現在のPID値を保存するパス。
ASSET_PATHS: []
静的コンテンツがコピーされるパスのリスト。コンテンツは{{ STATIC_ROOT }}にコピーされます。
注意 パスはAnsibleビルドコンテナ内で有効でなければなりません。ソースファイルをコピーする場合は、--with-volumesを使用してソースディレクトリをビルドコンテナにマウントしてください。
PROXY: no
このロールをデモアプリの一部として使用する場合、nginxはdjangoサービスをプロキシする必要があるため、'yes'に設定します。
PROXY_PASS: ""
プロキシリクエストを受け入れるバックエンドサーバのアドレス。例:
http://django:8080
PROXY_LOCATION: ""
オプションの修飾子と一致パターンを含む文字列。一致パターンを含むリクエストはPROXY_PASSのアドレスに転送されます。例、
~* /(api|static)
は/api
または/static
で始まるリクエストを転送します。
PROXY_CONNECT_TIMEOUT: 60
この値(秒)で
proxy_connect_timeout
を設定します。NGINXのドキュメントによれば、75秒を超えてはいけません。
PROXY_SEND_TIMEOUT: 60
この値(秒)で
proxy_send_timeout
を設定します。
PROXY_READ_TIMEOUT: 60
この値(秒)で
proxy_read_timeout
を設定します。
オプション
EXTRA_CONFIG
/etc/nginx/conf.d
に配置する追加のNGINX設定テンプレートの絶対パスのリスト。 ファイル名は.conf.j2
で終わる必要がありますが、このリストを指定する際には.conf
のみを入力してください!
依存関係
なし。
貢献
このロールに対する変更に取り組んでいる間、次のワークフローを使用してテストできます:
# 変更をコミット
$ git commit -m
# 変更をプッシュ
$ git push
# 作業ディレクトリをテストに設定
$ cd tests
# 最新のコミットでロールをインストールするビルドを実行
$ ./build.sh
いくつかのメモ:
- ビルドに変更を反映させるには、
git push
する必要があります。 - build.shを変更して、このロールのあなたのフォークを指すようにしてください。
- すべてがうまくいき、ビルドが成功すると、最新のコミットから構築されたコンテナがバックグラウンドで実行されます。
- 実行中のコンテナはポート8000:8000を公開するので、ブラウザでhttp://localhost:8000にアクセスすると、デフォルトのnginxページが表示されるはずです。
ライセンス
Apache v2
作者情報
貢献者の一覧はAUTHORSをご覧ください。皆さん、ありがとうございます!