【AWS】EC2へGitを入れるやり方などご紹介
最終更新日:2026年8月7日
はじめに
| 項目 | AWS | Microsoft Azure | Google Cloud |
|---|---|---|---|
| 世界シェア | 約33%(首位) | 約22% | 約11% |
| 強み | サービス数・実績 | Microsoft製品連携 | データ分析・AI |
| 無料枠 | 12ヶ月+常時無料 | 12ヶ月無料 | 常時無料枠あり |
| 主な資格 | CLF / SAA / SAP | AZ-900 / AZ-104 | ACE / PCA |
【要注意】上記のシェア・料金・資格名は変動する場合があります
クラウド市場シェアや無料枠の内容は時期により変わるため、最新の情報は各社公式サイトでご確認ください。
まずはEC2とGitとはどのようなものなのか説明し、EC2へGitをインストールする手順であったりサーバーの構築の仕方を紹介していきます。
EC2とは
EC2は「Amazon Elastic Compute Cloud」の略で、AWSで利用できるシステムの一つです。AWS上に構築した仮想サーバーを自由に利用でき、必要に応じてスペックを変更できる特徴を持っています。さらに、EC2は仮想サーバーをインスタンスという単位で扱っています。仮想サーバーのインスタンスを複数使い分割することで、可用性や信頼性に配慮した運用ができます。また、インスタンスはコピーや削除も簡単に行えるといった特徴を持っています。他にもLinuxやWindowsなどのOSが仮想サーバーで利用でき、自動でサーバーの構築、インストールを行ってくれる特徴も持っています。
Gitとは
Gitはソースコードやファイルのバージョンを簡単に管理するツールのことです。開発を行っていれば複数の開発者が触るのでソースコードが書き換わります。そして誰がいつどこを変えたのか、新しいバージョンはどれなのか、と把握しなければなりません。こういったバージョン管理やデバッグ作業、複数人で開発を行うときなどにGitというツールが役立ちます。つまりGitでできることは、古いバージョンに簡単に戻せること、新しいファイルや古いファイルを一元管理できること、複数人で修正した部分を1つに統合できること、編集した履歴を複数人で共有できること。以上の4点がGitでできることです。
余談ですが、GitとGitHubの違いはご存知でしょうか。GitHubは、Gitと連携し、開発者を支援するWebサービスのことです。GitHubには、Gitにはないプルリクエストという機能がありこれは、他のメンバーにソースコードの変更点についてのレビューの依頼をする機能です。そしてこのレビューは、OKがでたソースコードのみ反映されるので、品質の向上にとても役立ちます。
EC2へGitをインストール
EC2へGitをインストールするのはとても簡単で、以下のコマンドを入力するだけです。
sudo yum install git
それぞれの意味は、「sudo」がスーパーユーザで実行。「yum」がyumというインストーラーを使用。「install git」がGitをインストールする。これは文字そのままの意味ですね。
EC2でGitのサーバーを構築
Gitがインストールされたか確認するには以下のコマンドを入力して確認します。
git --version
バージョンが表示されたらインストールが完了しているということです。そして、Git実行用のユーザを作ります。
useradd gituser
passwd gituser
これでGitのセットアップは完了です。
次に、「Gitolite」というGitで共有リポジトリのユーザやアクセスの管理を行えるツールをインストールします。これをインストールすることでsshまたはhttp経由でアクセスしたときに認証を行い、リポジトリへのアクセス制限を設けることができます。今回のサーバー構築ではsshでセットアップを行います。では、Gitoliteをインストールしていきます。rootユーザでGitoliteのセットアップに必要なモジュールをまずインストールします。
yum install perl-Data-Dumper
インストールが終わったらGitoliteのセットアップを行います。
セットアップにあたって、gitの実行ユーザをgituserへユーザを切り替えてセットアップしていきます。
su - gituser
git clone git://github.com/sitaramc/gitolite
mkdir -p $HOME/bin
gitolite/install -to $HOME/bin
これでインストールはできました。ただインストールできただけで使用はまだできません。使用するには、管理者(admin)として使うキーペアというものを登録しなければなりません。キーペアの作成は、以下のコマンドで作成できます。
ssh-keygen -t rsa
キーの名前を変更することもできますが、特に名前を変更しない場合はキーを作成して何か表示されたらEnterを3回ほど押していただければ、「id_rsa」と「id_rsa.pub」というキーが2つできます。もし、名前を変更する場合は1回目に表示されたときに、「Enter file in which to save the key」の後の括弧の中を「(/home/gitkey/.ssh/id_rsa): ./gitkey」と入力すれば、「gitkey」と「gitkey.pub」という名前になります。「gitkey」は認証に使う秘密鍵で「gitkey.pub」はGitoliteに登録する公開鍵です。今回はgitkeyという名前にしました。
それでは、gitkeyを使ってGitoliteをセットアップしていきます。
./bin/gitolite setup -pk ./gitkey.pub
これを入力すると、ホームディレクトリ配下に「repositories」というディレクトリが作られます。Gitoliteで認証をするリポジトリはこの「repositories」の中に作られます。そしてセットアップを行うことで初期状態でリポジトリが3つ作られます。3つの中の「gitolite-admin」というリポジトリを使用して、リポジトリの追加やユーザの管理を行っていきます。
リポジトリの追加には、「gitolite-admin」をローカルにクローンしなければなりません。なので、秘密鍵をローカルマシンにダウンロードします。sshでアクセスするので.sshディレクトリにダウンロードします。
scp gitkey@[GitサーバーのIP]:~/gitkey ~/.ssh/
ダウンロードが終わったら、秘密鍵のパーミッションが600になっているか確認しましょう。次に、アクセスするときに使う秘密鍵を指定するためsshのconfigを設定します。
Host [適当なhost名]
HostName [GitサーバのIP]
Port 22
User gitkey
IdentityFile ~/.ssh/gitkey
これでsshのconfigの設定は完了です。
次にクローン(gitolite-adminの)を作成します。
git clone gitkey@[configで設定したhost名]:gitolite-admin
次にリポジトリを作成していきます。gitolite-adminの中のconfディレクトリの中にgitolite.confというファイルがあるので、これにユーザとリポジトリの設定を書き、管理します。
repo test
RW+ = gitkey
これで空の新規リポジトリが作られます。次にユーザの追加をしていきます。
ユーザの追加は、gitolite-admin配下の、keydirの中に公開鍵を配置します。セットアップと同じやり方で鍵を作ります。ssh-keygen -t rsaと入力し、「Enter file in which to save the key」の後の括弧の中に「(/home/gitkey/.ssh/id_rsa): ./[作成するユーザ名]」と入力すれば作成完了です。そして公開鍵をコミットし、リモートリポジトリにプッシュをすればサーバー構築は終了です。
この記事のポイント
- EC2へのGitインストールは
sudo yum install gitの一行で完了する - Gitoliteを使うことで、SSH鍵ベースの認証によりリポジトリごとに細かくアクセス権限を管理できる
- 「gitolite-admin」リポジトリの設定ファイル(gitolite.conf)と公開鍵の追加で、新規リポジトリやユーザーを管理する
よくある質問
- Q. EC2で自前のGitサーバーを構築する意味はありますか?GitHub等ではダメですか?
- A. 社外に出せない機密性の高いコードを自社管理のインフラ内に閉じておきたい場合や、コスト・ネットワーク要件の都合でクラウド外部のサービスを使いたくない場合に、自前のGitサーバー構築が選択肢になります。特別な要件がなければGitHub等のマネージドサービスの方が運用は容易です。
- Q. GitoliteとGitLabの違いは何ですか?
- A. Gitoliteはアクセス権限管理に特化した軽量なツールです。GitLabはIssue管理・CI/CD・Webインターフェース等を含む、より高機能な統合開発プラットフォームです。
- Q. 秘密鍵のパーミッションはなぜ600にする必要がありますか?
- A. SSHは秘密鍵ファイルの権限が緩すぎる(他ユーザーが読める状態)場合、セキュリティ上の理由から接続を拒否することがあるためです。所有者のみ読み書き可能な600に設定することが推奨されます。
関連記事
まとめ
EC2やGit、サーバーの構築の仕方について書いてきましたがいかがだったでしょうか。EC2へGitをインストールするやり方など意外と簡単でした。サーバーの構築は色々と手順はありますが、そこまで複雑ではないので是非皆さんもトライしてみてください。
▼ アクロビジョンについて


