Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Orbsを使ってAWSへ簡単デプロイ

Kim, Hirokuni
February 23, 2019
1.5k

 Orbsを使ってAWSへ簡単デプロイ

JAWS Days 2019での登壇資料

Kim, Hirokuni

February 23, 2019
Tweet

Transcript

  1. 4 自己紹介: Kim, Hirokuni (金 洋国) - 元CircleCI 開発者 -

    CircleCI Japan Tech Lead ”この発言は個人の見解ではなく所属する組 織を代表しています”
  2. 9 AWS連携の問題 • aws cliちゃんとインストールしたり... • docker loginでecrにログインしないとだったり... • 手動でaws

    CLIをバシバシ叩かないといけない... • 同じようなプロジェクトが複数あると大変
  3. 17 ECRへDockerイメージのデプロイ version: 2.1 orbs: aws-ecr: circleci/[email protected] # ECRのOrbをインポート workflows:

    build-and-deploy: jobs: - aws-ecr/build_and_push_image: # 用意されているジョブにパラメータを渡して呼ぶ account-url: AWS_ECR_ACCOUNT_URL # ECRのアカウントの環境変数 repo: 'nginx' # イメージのレポジトリ tag: '${CIRCLE_SHA1}' # イメージのタグにコミットのSHAを使う https://github.com/kimh/picard-test/blob/jaws-days/.circleci/config.yml
  4. 18 ECSへサービスのデプロイ version: 2.1 orbs: ... aws-ecs: circleci/[email protected] # ECSのOrbをインポート

    workflows: build-and-deploy: jobs: - aws-ecr/build_and_push_image: ... - aws-ecs/deploy-service-update: # 用意されているジョブにパラメータを渡して呼ぶ requires: - aws-ecr/build_and_push_image # 最初にnginxイメージをビルド family: 'kim-app-nginx' # ECSのタスク定義 cluster-name: 'default-kim5' # ECSのクラスター名 # タスクで使うコンテナイメージを指定 container-image-name-updates: 'container=nginx,image-and-tag=833371238208.dkr.ecr.us-east-1.amazonaws.com/nginx:${CIRCLE_SHA1}' https://github.com/kimh/picard-test/blob/jaws-days/.circleci/config.yml