AWS CodeCommit ~セットアップから使い方まで~

はじめに

普段のソース管理にGit、GitHubをお使いの方は多いと思います。AWSにもGitを使えるソース管理のサービスが用意されていて、それがCodeCommitです。

Codeと名のつくサービスは他にも、CodeBuild、CodeDeploy、CodePipeline といったものがあり、アプリケーションのビルド~デプロイといった一連の作業をAWS上で行う事ができるようになっています。

今回は、AWSでGitを使えるように、CodeCommitのセットアップから、使い方まで解説します。Gitの使い方に慣れていない方には、少しツライ内容かもしれませんが、これを期にお試し頂くのもよいかもしれません。

CodeCommitをリモートリポジトリとして利用する為には、以下の操作が必要となります。

  • IAMでユーザーにCodeCommitの権限を付与
  • CodeCommitでリポジトリの作成
  • 公開鍵を作成しIAMユーザーの認証情報に登録

以下に手順を記載しますので、最後までご覧頂ければ幸いです。

IAMユーザーにCodeCommitの権限を付与

rootユーザーでAWSのマネジメントコンソールにログインします。

サービスからIAMと検索し、IAMの画面を開きます。現在アタッチ済みのポリシーを確認して、CodeCommitに対するアクセス権限の有無を確認します。もし、権限がなければCodeCommitに対してアクセス権限を付与します。今回はフルアクセス権限を付与しておきます。

リポジトリの作成

rootユーザーを、一度サインアウトしてから、上記のIAMユーザーでサインインします。

続いて、マネジメントコンソールで、サービスからCodeCommitと検索し画面を開いたら、右上のリポジトリの作成ボタンをクリックします。リポジトリ名は任意のものを入力し、
作成ボタンをクリックします。

「リポジトリが正常に作成されました」 と表示されたらOKです。
後ほど、このリポジトリをローカルにクローンするので、試しにテキストファイルを1つ作成しておきます。

作成したリポジトリをクリックし、ファイルの追加ボタンをクリックします。
適当に文字とファイル名(拡張子.txt)を入力します。作成者名とEメールアドレスも必須なので入力します。

変更のコミットボタンをクリックします。

公開鍵を作成しIAMユーザーの認証情報に登録

続いて、お使いのパソコンで、CodeCommitのリポジトリにssh接続する為の、公開鍵を作成します。

Gitのクライアントソフトウェアを立ち上げます。WindowsならGit Bash、macならターミナルなどが挙げられます。

ssh-keygen コマンドを入力しENTERをクリックします。

Enter file in which to save the key([※ここは id_rsaのパスが表示されます]): と表示されたらそのまま何も入力せずENTERをクリックします。

Enter passphrase (empty for no passphrase): と表示されたらそのまま何も入力せずENTERをクリックします。

作成されたid_rsa.pub の中身を確認し、文字列をコピーしておきます。

AWSのマネジメントコンソールからIAMの画面を開き、CodeCommitフルアクセスのユーザーを選択します。

認証情報タグを選択し、SSHパブリックキーのアップロードボタンをクリックします。表示されたフィールドに、上記でコピーしたid_rsa.pubの内容をペーストします。

SSHパブリックキーのアップロードボタンをクリックします。
上記の手順まで実行すると、SSHキーIDが発行されます。

Gitクライアントで、vi ~/.ssh/config を実行し、下記を追加し保存します。

  • Host git-codecommit.*.amazonaws.com
  • User //※ここに上記SSHキーIDを入力します
  • IdentityFile ~/.ssh/id_rsa

リポジトリをクローンしてみる

CodeCommitの画面で、作成したリポジトリを選択し、URLのクローンボタンから、接続のステップ > SSH の順で操作します。

git clone コマンドが表示されているので、そのままコピーして、Gitクライアントで実行します。

無事、クローンされたら、中身を確認してみます。CodeCommitの画面で作成しておいたテキストファイルも確認できるはずです。

まとめ

CodeCommitでリポジトリを作成して使えるところまで、紹介させて頂きました。

今回はSSHでCodeCommitに接続する方法を試しましたが、他にもhttpsでの接続も可能です。

最後までご覧頂き、ありがとうございました。

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です