geerlingguy.ecr_container_build
Ansible ロール: ECR コンテナビルド
この Ansible ロールは、Docker コンテナイメージをビルドし、(オプションで)AWS ECR リポジトリにプッシュします。
要件
- Docker
- Pip パッケージ:
boto3
,docker
ロール変数
使用可能な変数は以下に示されており、デフォルト値も含まれています(defaults/main.yml
を参照):
ecr_image_src_dir: ../my-project
ecr_image_name: namespace/my-project
Dockerfileと必要なリソースが含まれるソースディレクトリと、ビルドされるDockerイメージの名前(通常はnamespace/project
の形式)のことです。
ecr_image_buildargs: {}
Dockerイメージをビルドする際にdocker_image
モジュールに渡すビルド引数。引数はキーと値のペアでオブジェクトとして渡す必要があります。例: { name: value, name2: value2 }
ecr_image_tags: ['latest']
ECRにプッシュされる最終イメージに適用するタグ。
ecr_login_required: false
コンテナビルドのソースとしてECRを使用する場合はtrue
に設定します(例えば、Dockerfile
のFROM
で)。
ecr_push: true
ビルドしたイメージをECRにプッシュするかどうか。イメージビルドの部分だけをテストする場合やECRに接続できない場合はfalse
に設定します。
ecr_region: us-east-1
ecr_account_id: '123456789012'
ecr_url: "{{ ecr_account_id }}.dkr.ecr.{{ ecr_region }}.amazonaws.com"
ECRのためのAWSアカウントの詳細。
依存関係
なし。
例プレイブック
ローカルでのビルド(Docker CEとdocker
pipパッケージがすでにインストールされていると仮定):
---
- hosts: localhost
connection: local
gather_facts: false
vars:
ecr_image_src_dir: ../my-project
ecr_image_name: namespace/my-project
ecr_image_tags: ['latest','1.2.3']
ecr_account_id: '123456789012'
pip_install_packages: ['docker']
roles:
- role: geerlingguy.ecr_container_build
リモートサーバーでのビルド:
---
- hosts: localhost
connection: local
gather_facts: false
vars:
ecr_image_src_dir: ../my-project
ecr_image_name: namespace/my-project
ecr_image_tags: ['latest','1.2.3']
ecr_account_id: '123456789012'
pip_install_packages: ['docker']
roles:
- role: geerlingguy.docker
- role: geerlingguy.pip
- role: geerlingguy.ecr_container_build
ライセンス
MIT / BSD
著者情報
このロールは、Jeff Geerlingによって2018年に作成されました。彼は Ansible for DevOpsの著者です。
プロジェクトについて
ECR docker image build and push management role.
インストール
ansible-galaxy install geerlingguy.ecr_container_build
ライセンス
mit
ダウンロード
24.2k
所有者
Father, author, developer, maker. Sometimes called "an inflammatory enigma". #stl #drupal #ansible #k8s #raspberrypi #crohns