GCP無料枠でWordPressブログを運用する

この記事は約5分で読めます。

このブログは Google Cloud Platform(GCP)の無料枠で利用できる Compute Engine のインスタンスを使って運用しています。今回はその方法を説明します。

※詳しい手順を説明しようと思ったのですが、スクリーンショットを撮るのが面倒だったので雑に書いてます。詳細は後々書き足すかも。

## なぜ GCP なのか

一言で言えば、無料で運用したいからですね w

無料で WordPress を立ち上げる場合の候補としては、自宅サーバ、GCP や AWS などのクラウドサービスの無料枠、無料レンタルサーバが挙げられます。

自宅サーバは物理的に管理が大変なので却下。

無料レンタルサーバは管理業者による広告が表示されたり、独自ドメインに対応していなかったりするのでこれも見送り。

となるとクラウドサービスの無料枠を使うことになるのですが、AWS や Azure の無料枠では残念ながら恒久的に無料とはいかず…

というわけで GCP を使うことにしました。

## Compute Engine

GCP には2種類の無料枠があります。

– 12 ヶ月の期限付きクレジットが 300$分使える
– サービスの一部をずっと使える

ブログは長く運用したいので後者だけで完結したいところですね。
ご安心ください。ありがたいことに Compute engine が含まれているので、これで WordPress を動かすことができます!

無料トライアルと無料枠  |  Google Cloud
0 分のクレジットを含む無料トライアルを利用して、GCP で構築を開始しましょう。さらに、Compute Engine など、20 以上のプロダクトを無料でご利用いただけます。

## インスタンスの構築

ググってチュートリアル的なやつをやってください w
以下のような流れになります。

– (なければ)Google アカウントを作る
– GCP のプロジェクトを作る
– 請求先アカウントを作って紐付け(要クレカ。支払いは発生しない)
– インスタンスを建てる(https を許可しておきましょう)

ちなみに、f1-micro が使えるリージョンの中で日本に一番近いのが es-west だそうです。

OS は Ubuntu18 の LTS なやつを選びました。

あとこれは忘れがちなのですが、IP アドレスを固定しておくことをおすすめします。そうしないとインスタンスを再起動するたびに IP アドレスが変わってしまい、ドメインの向き先を変えないといけなくなってしまいます。

インスタンスの編集画面で、以下の通りに設定します。

– ネットワーク インターフェースを選択
– 外部 IP の選択ボックスを開き、「IP アドレスを作成」を選択
– できあがった IP アドレスに設定して保存

静的外部 IP アドレスの予約  |  Compute Engine ドキュメント  |  Google Cloud
Compute Engine の仮想マシン インスタンスの静的外部 IP アドレスを予約します。

## ミドルウェアのインストール

よくある 3 点セット(Web サーバ、DBMS、プログラミング環境)をインストールして、いわゆる LAMP 環境を構築します。

### Web サーバのインストール

nginx なり apache なり H2O なり、お好きなものをインストールしてください。
WordPress は.htaccess を使うので、apache が一番 easy だと思います。
一方で、弱小サーバなので少しでも負荷を減らすために他のミドルウェアを選択するのもアリですね。

とりあえず apache のインストールコマンドを貼っておきます。

`sudo apt -y install apache2`

これでブラウザから外部 IP でサーバにアクセスできるようになります。

### DBMS のインストール・DB の作成

MySQL か mariaDB をインストールします。基本的に以下で ok。

`sudo apt -y install mysql-server mysql-client`

インストールしたら、WordPress のデータを保存するための DB を一つ作っておきましょう。

### PHP のインストール

これもググればたくさんでてきますが、とりあえず以下でよいかと

`sudo apt -y install php7.2 php7.2-mysql`

## WordPress のインストール

今時 FTP であげるのも面倒なので、インスタンスでダウンロードしちゃいます。

`wget https://ja.wordpress.org/latest-ja.zip`

unzip で解凍してドキュメントルートへ移動し、以下のコマンドで所有者を web サーバの実行ユーザにします。

“`
unzip latest-ja.zip
sudo mv [WordPressのディレクトリ] /var/www/html/
sudo chown -R www-data:www-data /var/www/html/[WordPressのディレクトリ]
“`

ブログから大規模サイトまで作れる CMS - WordPress.org 日本語
簡単に美しいサイト、ブログ、アプリを作成するのに使えるオープンソースソフトウェア。

## ドメインの設定

ドメインはお名前ドットコムで取得しました。(ここだけお金かかってます。年 1500 円くらい。)
管理画面がわかりにくくてレコードの設定に時間がかかってしまったので、設定方法をここにメモしておきます。

– お名前.com Navi にログインし、ドメイン設定のページを開く。
– 「ネームサーバーの設定」にある「DNS 設定/転送設定」を選択。
– ドメインを選択して次へ進む
– またメニューが出てくるので、「DNS レコード設定を利用する」を選択
– `TYPE`を`A`にして、`VALUE`の部分にインスタンスの「外部 IP」を入力
– 確認画面へ進み、設定して完了

これでドメインからサイトを表示できるようになったはず。

## SSL 証明書の設定

Chrome なんかはデフォルトで https でアクセスしてくるので、SSL 証明書を設定する必要があります。
無料で利用可能な Let’s Encrypt を使います。

Let's Encrypt - フリーな SSL/TLS 証明書
Let's Encryptは、非営利団体の Internet Security Research Group (ISRG) が提供する自動化されたフリーでオープンな認証局です。

## ブログの立ち上げ

ここからはブラウザ上で作業します。
WordPress をインストールした URL にアクセスすると、ブログの設定を行うためのガイドが出てくるので、それにしたがってインストールしてください。

あとは好みのテーマをインストールすればサイト完成です。

## おわりに

書いていて思いましたが、意外とやることが多いですね…
僕は Web サーバのインストールで手戻りがあったので、全体でだいたい 2~3 時間くらいかかりました。

レガシーな運用方法ですが、プライベートで GCP を軽く触るには良い題材だと思います。プロジェクトなどの概念がわかってきたら、各種サービスを試していきたいですね。

今回はサイトの立ち上げまでを書きましたが、運用にあたって WordPress プラグインをいくつか利用しているので、それについてもまた書きたいと思います。

コメント

タイトルとURLをコピーしました