GitやGitHubを導入したいけど、自社サーバーへの導入方法がわからない、セキュリティ的に不安といった企業も多いのではないでしょうか。
本記事では、企業向けGitサービス「GitHub Enterprise」について、基本的な情報から実際の使い方についてご紹介していきます。
- GitHub Enterpriseは企業向けのGitサービス
- 簡単に導入出来る上、低コストで利用可能
- 万全のセキュリティ体制で安心
- 専用ダッシュボードやヘルスチェックなどの限定機能が利用可能
- 超有名企業でも導入実績有り
Github Enterpriseとは
GitHub Enterprise(GHE)とは何かを一言でいうと、Enterpriseという単語からも分かるとおり、企業の導入に適したGitです。履歴管理やブランチの作成といった基本機能はGitと変わりません。
企業がソースコード管理の仕組みを導入するとき、必ず問題となるのが以下です。
- セキュリティを担保できるか?
- 既存環境へ導入できるか?
- 運用コストを抑えられるか?
これらを容易に解消してくれるのが、GitHub Enterpriseなのです!
導入が簡単
GHEの導入はとても簡単です。さまざまなクラウドへの導入が可能なのに加えて、手順も非常にシンプルです。
AWSで導入する場合、CloudFormationのコマンドがすでに用意されているので、そのコマンドを実行するだけでサーバーインスタンスを構築できます。またインスタンスの立ち上げ時にGHEのAMI(Amazon マシンイメージ)を指定することもできます。
本記事の執筆にあたり実際にAWSへ導入したところ、筆者にとって初めての作業にもかかわらず、1時間程度でサーバーインスタンスを立ち上げることができました。
GHEは1つのプロダクトであり、Webサービスではありません。つまり自社サーバーにインストールすることが可能です。冒頭でお伝えしたとおり社外にソースコードという資産を置くのに抵抗がある、または社内規則上できないといった場合、オンプレミス環境へ導入できるメリットは大きいです。
どんな会社が導入しているの?
GHEはサイバーエージェント、LINE、NASA、SAP、PayPal、Greeといった超有名企業でも導入事例があります。
他のAWSサービスとの連携が簡単
そもそも、GHEとAWSはとても相性が良いのです。EBSにはスナップショットでバックアップを取る機能があります。この機能をさらにGHE向けに最適化したバックアップツール「github/backup-utils」があります。このツールとEBS自体のバックアップ機能を併用すると、かなり強固なバックアップシステムが運用できます。
その他CollectdやCloudwatchを利用したメトリクス管理等々、AWSの各種サービスとGHEは連携ができます。
「AWSサービスも合わせて詳しく知りたい」といった方は、「ポテパンキャンプ」での無料カウンセリングがおすすめです。
低コスト
ライセンス料は年間2500ドル(10ライセンス)です。ということは1ライセンスあたり月額約2200円(※)となり、決して高くはないことがわかります。ちなみにGitHubのBusinessプランは、1ヶ月あたり21ドル(2310円)です。契約の最低ライセンス数などなどが異なるので単純比較はできませんが、GHEはコスト的に決して高くはないことがわかります。
一度試したい!そういう方向けに、45日のフリートライアルが用意されています。ぜひご利用ください。
(※)1ライセンス年間250ドルとして、1ドル110円で計算すると、250ドル×110円÷12ヶ月=約2200円
万全のセキュリティ体制
GitHubと同等のセキュリティ機能でいえば、GHEも以下のような機能を備えています。
- 2要素認証(2段階認証)
- チームパーミッション
- 組織パーミッション
しかし、GHEのみにできることだってあります。
- LDAP認証
- CAS認証
LDAP認証をお使いの会社であれば、GHEのアカウントもLDAPで集中管理できるのでメリットが大きいですね。
Enterpriseを使いこなすためのGitHubの使い方が学べるスクールならこちら
主な機能
ソース管理としてのGitやGitHubの機能ではなく、ここではGHE特有の機能に注目してみます。
GHE専用のダッシュボード
GHEは管理用ダッシュボードがあり、そこで各種設定ができます。ターミナル画面でコマンドを叩くことなく、GUIで操作できるのはうれしいですね。
ヘルスチェック
導入したサーバーのヘルスチェックが可能です。視覚的にとても見やすい表示なので、見ればすぐにサーバーの状態が分かります。
GHEのアップグレード
GHEには、自動でアップグレードする方法と手動で行う方法の2とおりがあります。自動なら何もしなくともアップグレードされます。手動で行うとしても、サーバーにログインしてコマンドを叩くだけでアップグレード可能です。
その他、GitHubでは実現できないさまざまなことが可能です。詳細はこちらをご覧ください。
料金・支払方法
GitHub社のホームページによると、カードによる支払いを受け付けているようです。1人1ライセンスとして10ライセンスが最低ライセンス数で、それ以下では契約できません。
ところで、どうしても海外の会社にお金を払うのは不安がありますよね。そのような方は、日本のGitHub社代理店に相談してはいかがでしょうか?国内初のGithub社代理店であるマクニカ・ネットワークスでは、支払いだけでなく見積もりや技術的なサポートまで相談を受け付けています。海外の会社とお金のやり取りするのが不安、または英語によるサポートを受けるのに自信がない、そんな方はぜひ相談してみてください。
Enterpriseを使いこなすためのGitHubの使い方が学べるスクールならこちら
導入方法
それでは実際に導入してみましょう。各種クラウドやオンプレミス環境へ導入可能ですが、ここではAWSへトライアル版を導入する方法を解説します。
大きく分けて、以下の順で作業を進めます。
- AWSのアカウント取得
- GHEのトライアルライセンスの取得
- ライセンスファイルの入手
- AWSのサーバーインスタンス立ち上げ
AWSのライセンス取得はここでは割愛します。それ以降、順番に解説します。
GHEのトライアルライセンス取得
トライアルライセンスの取得はこちらでできます。
必要事項を入力して、画面下の「Send request」と書かれたボタンをクリックしてください。クリックすると、以下の画面に遷移します。
AWSでのGHEインスタンスの作成方法について書かれています。CloudFormation用のコマンドを使う方法や、サーバー立ち上げ時にAMIを指定する方法が解説されています。本記事ではS3上に保存されているテンプレートファイルを指定する方法を解説します。よって「…or using the AWS console」の4番、「Select Amazon S3 template URL and enter:」にあるURLをコピーしておいてください。
この画面で「Download your license」をクリックし、ライセンスファイルのダウンロードをしておいてください。
サーバーインスタンスの立ち上げ
AWSのダッシュボードを開き、「管理ツール」の「CloudFormation」をクリックしてください。
ここで新たにスタックを作成します。「スタックを作成する」ボタンをクリックしてください。
ここで、S3上に保存されているテンプレートファイルを指定します。「Amazon S3 テンプレートURLの指定」をクリックし、先ほどコピーしておいたURLを貼り付けてください。
あとはスタック名やインスタンスのサイズなどが聞かれますが、基本的には何もせずに次へ進んでください。
「状況」が「CREATE_COMPLETE」に変われば完了です。
サーバーインスタンスへアクセス
AWSのダッシュボードでEC2のインスタンスが起動していることを確認し、そこに表示されているサーバーインスタンスのURLへアクセスしてください。
いよいよGHEのセットアップに入りますが、基本的に迷うことはないでしょう。次へ次へと進めてください。
リポジトリの作成
セットアップが完了すると、以下の見慣れた画面が出てきます。
「Start a project」をクリックして新規にリポジトリを作りましょう。
Enterpriseだけでなく「GitHubの使い方も詳しく知りたい」といった方は、「ポテパンキャンプ」での無料カウンセリングがおすすめです。
使い方
あとはGitHubとまったく同じです。リポジトリを作成するとそのURLが表示されるので、クライアントPCでクローンすれば使えるようになります。クローンした後はいつものエディタやIDEで編集し、コミットして、プッシュすればOKです。
まとめ
実際に導入してみると、意外に簡単に出来てしまうことが伝わったかと思います。
GitHub Enterpriseではトライアル版の利用も可能ですので、少しでも興味を持たれた方はぜひ一度お試しください。