CodeBuildを使ってみたメモ
本当に今更だけどCodeBuildを使って、GitHubリポジトリのDockerfileをビルド&イメージプッシュ & Kubernetesにデプロイする設定を入れたので知見をメモする。
GitHubと連携できる
てっきりリポジトリにコミットされたらCodeBuildを実行〜みたいな時、CodeCommitじゃないとできないのかなと思っていたのですが、GitHubでもできました。
CodeBuildでDockerイメージをビルド(dockerコマンドの実行)する際には、CodeBuildオリジナルのDockerイメージを使わなければならない
"特権付与"にチェックを入れても、CodeBuild用のaws/codebuild/dockerイメージでなければdockerコマンドは使えません。
CodeBuildコンテナでのRubyインストール方法
前述の理由によりRubyを使いたい時、Rubyイメージが使えずコンテナにRubyをインストールするしかないのですが、普通にapt-get install rubyだと1.9が入ってしまいます。
2.4等新しいものをインストールする場合は次のようにします。
apt-get install -y software-properties-common
apt-add-repository -y ppa:brightbox/ruby-ng
apt-get update -y
apt-get -y install ruby2.4 ruby2.4-dev
イメージのタグなどに使う用のGitコミットID取得方法
下記変数が自動的にセットされているので、これが使えます。
※CodeBuild上のファイルは.gitがないようです。
CODEBUILD_RESOLVED_SOURCE_VERSION
シークレットの取り扱い
CodeBuildで環境変数を設定できるが、パスワード等のシークレットはAWS Systems Managerのパラメータストアを使います。
下記例は、パラメータストアにvalという名前で登録した値を、CodeBuild内でkeyという環境変数名前で使用できます。
env:
parameter-store:
key: "val"
Author And Source
この問題について(CodeBuildを使ってみたメモ), 我々は、より多くの情報をここで見つけました https://qiita.com/kter/items/4143c083f7db55ab5442著者帰属:元の著者の情報は、元のURLに含まれています。著作権は原作者に属する。
Content is automatically searched and collected through network algorithms . If there is a violation . Please contact us . We will adjust (correct author information ,or delete content ) as soon as possible .