【Microsoft Azure】仮想マシン上にGithub Enterpriseサーバを構築する【オチあり】

こんばんは。今日は、Azure上にGithub Enterpriseサーバを立てる手順について整理しておこうと思います。

つい先日GitLabサーバをAzure VM上に構築する手順を確認しましたが、今度はそのGithub Enterprise Serverになります。

セキュリティなどの観点から、ローカルサーバ上にソース管理システムを構築したケースがあるかと思います。そんな時にGiHub Enterprise Serverは良いソリューションになります。GitHubのEnterprise版は、自前のサーバー上に構築、つまりセルフホステッドが可能です。

AzureにはMarket Placeという機能があり、初心者でも簡単に構築することができましたので、ご安心ください!

それでは早速まいります!

Market PlaceからGitHub Enterprise Serverをデプロイする

Microsoft Azureでは、Market Placeという、サードパーティが自社ソリューションをAzure上で展開できるように、Azureリソースを使って構築したものを無料、または有料で利用することができる便利な機能があります。

Azure Marketplace

早速、「リソースの追加」で、Market Placeの検索窓にGitHubと入力してみると、Githubが提供している公式ソリューションとして、1つだけ、Github Enterprise Serverがヒットしましたので、こちらをデプロイします。

Github Enterprise Serverを選択し、作成をクリックします。

すると、仮想マシンの作成画面に遷移します。「イメージ」のところをみると、GitHub社により事前構築済みのイメージが指定されていることが分かります。

その他の設定(デプロイするリージョン、ストレージ、仮想ネットワーク設定など)は、お使いの環境に合わせて適宜変更すればOKです。

今回はテストですので、仮想マシンサイズもストレージも安いものに落としました。

ネットワークの設定は、既にGitHubサーバーをデプロイする先の仮想ネットワーク(VNET)が決まっていれば、それを指定しておきます。

デプロイ前の最終確認画面です。GitHubサーバーの料金は無料、VMは、自分が選んだスペックに応じた料金が発生します。

問題がなければ、デプロイを実行します!

たったこれだけで完了です!!便利です!

Github Enterprise Serverの稼働確認を行う

仮想マシンリソースから確認できるVMのパブリックIPアドレスにアクセスしてみると・・

あ・・あれ・・・なんだ・・

CPUかメモリのスペックが低すぎてサービスが正常に動作できていないことを疑う。ポータルからリソース状況を確認しようとしたけど、メモリ使用率はどうやらLinuxではデフォルトでは見れない模様。

むむむ・・・こうなればサーバにログインして直接状況を確認しよう・・ってサーバにもログインできない・・・

トラブルシュートしようにもできない状況だったので、とりあえず仮想マシンのスペックを上げて再度試してみることに。

どうやら、Githubのページでも最低XXX以上のスペックのVMを使ってくれと書いていた。

む・・・トライアルでもCPU2コア16GBメモリだと・・結構要求してくるではないか・・そりゃさっきの1コア2GBでは動かないわけだ笑

https://docs.github.com/en/enterprise-server@2.20/admin/installation/installing-github-enterprise-server-on-azure

Github Enterprise Serverのリソース要件

作り直したところ・・

あ・・・あれ・・これでもダメなのか・・

何か別に原因があるかもしれない、だけどVMにログインすらできない・・

仮想マシンの概要ブレードを眺めていると、エージェントがNot Readyになっていることがわかった。

うまく行ってるとこんな感じになるんだけど・・・

もう一度、Githubの公式ドキュメントの記載とにらめっこ。何か設定を飛ばしたかもしれない。。

DiskもPremiumじゃないとダメとか、追加でDiskを追加する必要があるとかいろいろややこしいことが書いてある・・

むむむ・・いったんVMを削除してやり直してみるか・・・

ということで、VM作成画面に戻ってみると「事前設定された構成で開始する」というボタンが・・!これを使えばこの辺のややこしい設定は設定済で使えて安心・・・!

勝った・・・

選択画面もわかりやすい!最初からこうすればよかったよー

デプロイして、IPに接続・・・!

・・・

Not Runningなエージェント

・・・・

何でやねん!!!!!

(解決せず・・・ちーん)

最後まで付き合ってくださった方、ありがとうございました。またうまく行ったら更新しようと思います・・・・

やっぱりGitLabの方が構成もしやすいし簡単な気がする・・・

おしまい

この記事を気に入っていただけたらシェアをお願いします!
ABOUT US
Yuu113
初めまして。ゆうたろうと申します。 兵庫県出身、東京でシステムエンジニアをしております。現在は主にデータ分析、機械学習を活用してビジネスモデリングに取り組んでいます。 日々学んだことや経験したことを整理していきたいと思い、ブログを始めました。旅行、カメラ、IT技術、江戸文化が大好きですので、これらについても記事にしていきたいと思っています。