Why GCP ?
AWS EC2と異なり、microインスタンスならば1年以上利用しても無料!
What can …
- Webサーバ
- メールサーバ
- VPNサーバ
etc…
What’s need ?
- クレジットカード、もしくはデビットカード
- Google Cloud SDK
使うかどうかは分からないがインスタンスへの接続に便利なのでインストールして認証。
認証後に出てくるURLは閉じてしまいがちだけれども有用。
Windows派でSSHなんて知らんねん、な人類は嬉しい。
How to …
Googleにサインアップ/ログインし、GCPに登録する
Compute Engine ― イメージ ー イメージの作成
kusanagi-for-gcp/kusanagi-for-gcp.tar.gz
ソースを「Cloud Storage ファイル」として上記を検索してイメージを作成する。KUSANAGIというのは超音速WordPress仮想マシン。
Compute Engine ― VMインスタンス
「インスタンスを作成」をクリック。「vCPU x 1」から「micro」にしたいところですがメモリ不足でRPMデータベースが壊れるので「small」に変更。
ディスクは30GBまで無料。
nic0と書いてある場所をクリックしIP転送を「オン」。「HTTP トラフィックを許可する」、「HTTPS トラフィックを許可する」のチェックボックスを有効化、「作成」。
|
gcloud compute ssh <インスタンス名> --zone <ゾーン> |
|
sudo su - yum makecache fast yum clean all yum --enablerepo=remi,remi-php56 update -y |
「Google Cloud SDK Shell」を起動、接続しアップデートを実行。
|
kusanagi init shutdown now |
KUSANAGIを初期化、言語、キーボードレイアウト、その他を注意して設定、途中で訊かれる追加インストールに関しては無くても問題のでいらない。
シャットダウン後、「small」を利用する必要はないのでブラウザを用いて「micro」に変更して再び起動する。
|
sudo su - kusanagi provision --WordPress --wplang ja --fqdn test.local --noemail --dbname <dbname> --dbuser <username> --dbpass <passphrase> <website_name> |
WordPressをプロファイル生成。例なので適宜変更して使用して下さい。実際に実行したコマンドは記録しておくことをオススメします。
https://nibuiro.netの状態で準備するので今は証明書に関してスルーします。
ここで、後に変更可能なことを示しておく。
|
kusanagi setting -–fqdn FQDN [profile] |
- Let’s Encrypt のSSL証明書を自動的に取得するように変更
|
kusanagi ssl –-email email@example.com [profile] |
https://nibuiro.netにアクセスするためには作業を行っているコンピュータが自身でドメイン名を解決しなければなりません。
なので、「<GCPインスタンスの外部IP> nibuiro.net」と書き加えます。
- Linuxの場合
/etc/hosts
- Windowsの場合
C:\Windows\System32\drivers\etc\hosts
こうして、http://nibuiro.net/にアクセスすると、「さぁ、始めましょう!」なものが出てくる。
プロファイル生成時に指定した名前などをそのままコピペする、適当に埋める、と進めていくとダッシュボードにたどりつく。
おつかれさん…と言いたいところですがMariaDBのデフォルトの設定だとリブートしたあとが立ち上がらなくなる。
この時
|
systemctl status mariadb.service |
と打つとソケットに接続できないと出てくるのですが、これはメモリが不足し、途中で処理が止まってしまうが故のもの。
|
cat /var/log/mysql/mysqld.log vim /etc/my.cnf.d/server.cnf |
で、適宜以下のように書き換える。
query_cache_size = 8M # before: 128M
max_heap_table_size = 32M # before: 384M
ログの場所、設定ファイルの場所はバージョンによって違うことがある。
はい、おつかれさん。
セキュリティの強化は読者への課題とする(笑)。
追記:
PHP7のほうが落ちる頻度が少ない傾向がありました。kusanagi php7
で変更できます。
ドメイン設定: https://www.compiere-distribution-lab.net/idempiere-lab/install-advance/google-cloud-dns/