geerlingguy.ecr_container_build

Ansible ロール: ECR コンテナビルド

CI

この 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に設定します(例えば、DockerfileFROMで)。

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