Morning Girl

Web API, Windows, C#, .NET, Dynamics 365/CRM etc..

【Azure】Bitnamiを使ってAzureにRedmineを立ててみる + SendGridも組み合わせてメール通知

bitnamiという便利なサービスを知りました。

bitnami 公式 https://bitnami.com/

会社でRedmineを立てる必要もあったので、まず自分で検証用に構築してみました。

bitnamiってなんじゃらほい

Azure・AWSOracle CloudといったIaaS環境を提供しているクラウドサービスに対して、WordpressRedmineSubversionといったサーバー上で稼働するオープンソースアプリケーションを簡単にデプロイすることができるサービスです。

IaaSで真面目にRedmineとかを建てようとすると、VM構築してー、Apache入れてー、ほにゃらら~、となりますが、これを使えば、いろんなオープンソースアプリケーションをさくっと構成することができます。

今回はAzureにRedmineを立てて、ついでにメール通知をSendGridで構成してみました。

bitnamiサインアップからサブスクリプションの追加

あらかじめ、Azureのサブスクリプションは取得しておいてください。

まず、Bitnamiにアクセスしてユーザーアカウントを作成しておきます。

https://bitnami.com/

f:id:sugimomoto:20170408141454p:plain

その後、以下のURLのAzure用コンソールにアクセスして、サブスクリプションの追加を行います。

https://azure.bitnami.com/

f:id:sugimomoto:20170408141507p:plain

サブスクリプションはテナントをまたいで複数追加・管理することができます。

「Add subscription」をクリックして

f:id:sugimomoto:20170408141514p:plain

「Create Management Certificate for Microsoft Azure」をクリックします。

f:id:sugimomoto:20170408141521p:plain

あらかじめ、対象のAzureにサインアップしていれば、以下のような画面が表示されて、サブスクリプション ファイルをダウンロードすることができます。

f:id:sugimomoto:20170408141530p:plain

以下のようなものですね。

f:id:sugimomoto:20170408141537p:plain

これを先程の画面に追加すれば、対象のAzureサブスクリプションにアプリケーションを構築できる権限を移譲できます。

Redmineの構成

サブスクリプションを有効化後、Rdmineをデプロイします。

LibraryにRedmineがありますので、Lunchをクリックします。

f:id:sugimomoto:20170408141548p:plain

任意の名称と対象のサブスクリプションVMのサイズとRegionを選択して、「Create」をクリックすれば、Redmineの構築が始まります。

簡単ですねー。ただ、なぜか日本リージョンがうまくいきませんでした・・・。なんでだろう・・・。

f:id:sugimomoto:20170408141607p:plain

あとは気長に待ちます。だいたい30分くらいだったでしょうか。

f:id:sugimomoto:20170408141621p:plain

90%までいくと構築されている感じですが、なんか90%以上進まないときは画面をリフレッシュすると良さげです。

以下のような画面になれば、構成完了です。

f:id:sugimomoto:20170408141641p:plain

Redmineにアクセスできました。

f:id:sugimomoto:20170408141649p:plain

すばらしいスピード感です!

メール通知用SendGridの設定

初期状態では連携するメールサービスが無いため、Redmineの肝心要なメール通知が行われません。

なので、今回はすべてクラウドで完結できるように、SendGridを使って、メール通知が飛ぶようにしてみました。

まずは、AzureからSendgridを追加します。特にめんどうな部分は無いので、設定は割愛。

一応以前Blogで紹介しています。

kageura.hatenadiary.jp

f:id:sugimomoto:20170408141705p:plain

SendGrid構成後UserName・パスワード・SMTP サーバーを控えておきます。

f:id:sugimomoto:20170408141712p:plain

サーバーへの接続はSSHで行う必要があるので、今回はTera Termを使ってみました。

forest.watch.impress.co.jp

なお、Redmineのメール通知機能はconfiguration.ymlに設定されています。

メール通知のためのconfiguration.ymlの設定 — Redmine.JP

Tera TermでAzure VMのホスト名、ユーザーID・PWを入力して、接続を実施します。

f:id:sugimomoto:20170408141722p:plain

f:id:sugimomoto:20170408141728p:plain

ホスト名・ユーザーID・PWはbitnamiのサーバー情報からも確認できます。

f:id:sugimomoto:20170408142118p:plain

以下の通り接続できたら、

「cd ~/apps/redmine/htdocs/config」にある「configuration.yml」を編集します。

cd ~/apps/redmine/htdocs/config

vi configuration.yml

f:id:sugimomoto:20170408141732p:plain

以下の情報をSendgridの設定に変更します。

f:id:sugimomoto:20170408141739p:plain

設定後、Redmineにログインし、「メール設定」から「テストメールの送信」をクリックして、メールが送信されればOKです。

f:id:sugimomoto:20170408141744p:plain

参考

Windows Azure上にBitnamiでRedmineを構築する | 鈴木研究室 (裏)