GCP の GCE に redmine をたてる

GCP (Google Cloud Platform) の GCE (Google Compute Engine、AWSのEC2にあたる) に redmine を立ててみようと思い試しました。

 

環境

 

 

  • 課金が無料になる f1-micro (CPUは共有1コア、メモリは 0.6GB)
  • OS は CentOS (2018年12月現在 7.6)

 

 

インストール

 

とても便利な ansible の playbook が公開されているのでこれを使わせていただきます。

GitHub - farend/redmine-centos-ansible: RedmineをCentOSに自動インストールためのAnsibleプレイブック

使ったのは Latest commit 84a4eb9 on 8 Apr です。

さて手順に従って処理をしていきます。

epel からインストールされた ansible は 2.7.5 でした。

 

playbook少しだけ編集

 

ところで手順通りに実行していくと ansible-playbook 実行中、PostgrSQL のユーザ追加中にエラーで落ちます。sudu と su が混在しているのが良くないのでしょうか。postgres ユーザに su できてないようです。

roles/pg/tasks/main.ymlbecome_method: su を削除し(2箇所あります)、playbook を再実行したところココは通過。

 

無償環境を諦める

 

次に引っかかったのは passenger の apache2 用 module をビルドするところです。メモリが足りないということで落ちました。それを言われては仕方がない。

残念ながら無料のプランは諦めました(ページングスペースを増やせばいけるのかも知れないけど試してないです)。

インスタンスをシャットダウンし、GCP のコンソールから f1-micro を g1-small に変更。メモリは1.7GBももらえてしまいます。贅沢。

インスタンスを起動したら再度 ansible の playbook を実行。今度は passenger の apache2 用 module もビルドできて、そのまま最後まで走り抜けました。

一番メモリを食うのはここだったようです。

 

インスタンスを元にもどす

 

終わったらまたインスタンスをシャットダウンし、GCP のコンソールで g1-small を f1-micro に戻します。そしてインスタンス始動。

無事 redmine が動き出しました。いいぞいいぞ。