ヤマムギ

growing hard days.

*

AWS Code Commitをプライベートリポジトリとして使う

      2019/05/02

GitHubでもいいんですが、アクセスキーとかパスワードとかコンフィグ系で書いてるコードをマスクして上げているので、マスクしてないのもどこかで管理したくてAWS Code Commitを使う事にしました。
多分仕事でも使うと思いますがそのためにもノウハウは掴んでおきたく。

AWS Code Commitの設定

マネージメントコンソールで開発者用ツールの[Code Commit]をクリックします。
codecommit-1

2016/6/25現在でリージョンは「米国東部(バージニア北部)」のみですので他のリージョンの場合はリージョンを変更する画面になりますので変更します。
AWS_Management_Console_2

[Get Started]をクリックします。
AWS_CodeCommit_Management-3

[Repository Name]と[Desciption]を入力します。
AWS_CodeCommit_Management_4

Dashboardに作成したリポジトリが出来てます。
右の[URL]-[SSH]をクリックしてSSH URLをコピーしておきます。
(といいつつも、あとでコピーしようがいつでもいいです。お好きなタイミングでww)
AWS_CodeCommit_Management-5

キーペアの作成

Macで操作してます。
Linuxも同じ方法でいいと思います。
WindowsはPuttyGenとかで作りましょう。

Terminal.appを起動して下記コマンドを実行します。

キー名を聞かれるので適当に「code_commit」とかにします。
人それぞれのポリシーかと思いますが、パスフレーズは今回はなしにしてそのままEnterで進めました。

code_commit.pubが出来ているので中身を表示してコピーしておきます。

IAM(Identity & Access Management)の設定

マネジメントコンソールでセキュリティ & アイデンティティの [Identity & Access Management]をクリックします。
iam-1

Code Commitを使用するユーザの[アクセス許可]タブで[ポリシーのアタッチ]をクリックします。
フィルターに「codecommit」とか入れて、フィルタリングされた結果から[AWSCodeCommitPowerUser]を選択して[ポリシーのアタッチ]をクリックします。
IAM_Management_Console-2

[認証情報]タブの一番下に[AWS CodeCommit]のSSHキーという項目が出来ているので[SSH公開キーのアップロード]をクリックします。
IAM_Management_Console-3

フィールドにcode_commit.pubの中身を貼り付けて[SSH公開キーのアップロード]をクリックします。
IAM_Management_Console-4

エラーなくアップロードが出来ればOKです。
生成されたSSHキーIDがリポジトリにアクセスする時のユーザーIDになるのでコピーしておきます。
IAM_Management_Console-5

ローカルにリポジトリを作成

SSH接続するためにssh configファイルを作成します。
(すでにあれば追記してください)

UserにはIAMでSSH公開キーをアップロードした際に生成されたSSHキーIDを設定します。

configのパーミッションを600にします。

ローカルリポジトリを作成したいディレクトリに移動して git cloneします。

エラーがなければ成功です。
ディレクトリに.gitディレクトリが出来ています。

リポジトリで管理したいコード郡をローカルリポジトリディレクトリに移動してコミットしてプッシュします。

AWS Code Commitで確認出来ました。
AWS_CodeCommit_Management-end


最後までお読みいただきましてありがとうございました!

「AWS認定資格試験テキスト&問題集 AWS認定ソリューションアーキテクト - プロフェッショナル 改訂第2版」という本を書きました。

「AWS認定資格試験テキスト AWS認定クラウドプラクティショナー 改訂第3版」という本を書きました。

「AWS認定資格試験テキスト AWS認定AIプラクティショナー」という本を書きました。

「ポケットスタディ AWS認定 デベロッパーアソシエイト [DVA-C02対応] 」という本を書きました。

「要点整理から攻略するAWS認定ソリューションアーキテクト-アソシエイト」という本を書きました。

「AWSではじめるLinux入門ガイド」という本を書きました。

 - AWS ,

  関連記事

Rocket.ChatのOutGoingWebhookからのAPI GatewayからのDynamoDB

少し前に、Rocket.ChatからOut Going Webhookを設定して …

iPad ProのWorking CopyでAWS CodeCommitのリポジトリを使う

iPad Proを導入しましたので、原稿執筆や校正でフル活用しようと思いまして。 …

AWS東京リージョンのAZ(apne1-az1)障害時の当ブログで発生していたことの記録

日本時間2/19 23:01頃より、東京リージョン、特定AZの1つでEC2インス …

Kinesis Data AnalyticsをKinesis Data Streamsに接続してSQL検索する

Amazon Kinesis Data StreamsにTwitter検索データ …

Amazon API GatewayをLambda(Python)で削除する

やりたいこと 特定のAWSアカウント、特定のリージョン内のAPI Gateway …

EC2 Auto Scalingグループでインスタンスの更新を実行

このブログのAMI、起動テンプレートを更新して、EC2 Auto Scaling …

Introduction to Amazon EKS Workshopの記録

AWS Workshop StudioのIntroduction to Amaz …

Amazon CloudWatch Syntheticsでハートビートモニタリングを実行

このブログに対してハートビートモニタリングのCanaryを実行してみました。 C …

プライベートサブネットのEC2でセッションマネージャを使うようVPCエンドポイントを構成する

インターネットゲートウェイへのルートがないルートテーブルに関連付けられたプライベ …

AWS EC2 Amazon Linux にEC-CUBE3をnginx+MySql環境へインストール(手順検証中)

EC2インスタンスを作成する 少し古い記事で恐縮ですが試したい事があるのでAWS …