shelleg.ansible_role_portainer
ansible-role-portainer
======================= Portainer - Dockerのための最もクールなUI http://portainer.io/
このロールはDockerコンテナを使用してPortainerをインストールします。
ロール内のタスク
- pipを使用してdocker-pyが存在することを確認
- 既存のコンテナを削除 [
remove_existing_container: true
の場合] - 永続データを削除 [
remove_persistent_data: true
の場合] - ホストにPortainerコンテナをデプロイ [永続データのパスを定義]
- 管理者ユーザーのパスワードを設定
- 認証トークンを生成
- エンドポイントを定義 [辞書 | リスト]
- Portainerの設定を構成 [Jinja2テンプレート]
- レジストリを構成 [Jinja2テンプレート]
依存関係
curl
docker
(サービス + Pythonパッケージ)
ロール変数
名前 | 説明 | デフォルト |
---|---|---|
configure_settings | デフォルトのPortainer設定をテンプレートで上書き | false |
configure_registry | Portainerが使用するDockerレジストリを設定 | false |
remove_persistent_data | ホスト上の永続データディレクトリを削除 | false |
remove_existing_container | 'portainer'という名前の既存のコンテナを削除 | false |
persistent_data_path | 永続データを保存するために使用されるパス | /opt/portainer:/data |
auth_method | LDAPまたはスタンドアロンを使用 [2はLDAP、1はスタンドアロン] | |
registry_type | 1(Quay.io)、2(Azureコンテナレジストリ)、または3(カスタムレジストリ) | |
version | 使用するPortainerのバージョン | コミット時の 'develop' はLDAPをサポートするバージョン |
完全なリストは 'defaults'の下のmain.ymlを参照してください |
ロールの実行
ansible-playbook -i myinventory ./playbooks/deploy-portainer.yml
プレイブックの例
---
- hosts: myhosts
become: true
vars:
pip_install_packages:
- name: docker
vars_files:
- vars/portainer.yml
roles:
- geerlingguy.docker
- geerlingguy.pip
- portainer