AWSでWordPress構築(Bitnami)
部署が異動になってからはずっとAWS関連の
仕事に携わることが出来ている。とても嬉しい。
以前はローカルのVirtualBoxに
VagrantでWordPressを構築した際の
備忘録エントリーをアップしたが、
今回は勉強がてらAWSの環境に
WordPressを構築してみた。
なんかWordPressばっかりだな、最近。
0.構築の前提
【アカウント】
AWSサポートプラン:ベーシック(無料枠)
【インスタンス】
AMI:WordPress Certified by Bitnami(無料枠)
インスタンスタイプ:t2.micro(無料枠)
EBS:汎用SSD(GP2) 10GiB(無料枠)
【セキュリティグループ】
SSH(22)…マイIPのみ
HTTP(80)…任意の場所
HTTPS(443)…任意の場所
1.インスタンスの作成
AWSのコンソールから
「サービス」→「EC2」
を選択し、EC2ダッシュボードへ移動する。
上記の前提通りにインスタンスを作成。
(AMI選定時は「AWS MarketPlace」から)
作成時には「キーペア」も一緒に作成され、
SSH接続の際に必要となるので厳重に保管する。
2.グローバルIPアドレスの付与*1
EC2ダッシュボードの下の方に
「Elastic IP」
とやらがあるので選択。
「新しいアドレスの割り当て」
を選んで進んでいくと、
グローバルIPが付与される。
その際、インスタンス作成時に
付与されていたパブリックIPは
削除される。
AWSの世界には3種類のIPアドレスが
存在し、「Elastic IP」が通常は
グローバルIPとして使用される。
IPアドレス | 概要 |
---|---|
Private IP | インターネットから到達できない。 VPC内での通信に使用できる。 |
Public IP | インターネットから到達できる。 インスタンス起動のたびに変更される。 |
Elastic IP | インターネットから到達できる。 インスタンスを起動してもずっと固定。 |
ちなみに今回はやってないけど、AWSの
「Route53」というDNSサービスを使えば
ドメインの設定もできる。
3.WordPressへログイン&日本語化
この時点で、URLに「http://<Elastic IP>」を
叩けばWordPressの画面にたどり着ける。
早い。早すぎる。慣れてる人なら
数分でWordPress環境を構築できる。
自前でチビチビ入れて5時間かかったのに…
デフォルト設定が英語なので、まずは
管理者権限でログインして日本語化する。
サイドバーの下の方に「Log in」という
リンクを踏むとログイン画面に遷移する。
その際にパスワードが必要になるのだが、
AWSのWordPress導入チュートリアルに
従うと下記の方法により取得する。
- EC2ダッシュボードで、作成した
WordPressのインスタンスを選択。 - 「アクション」→「インスタンスの設定」
→「システムログの取得」を選択。 - システムログウィンドウが表示されるので
その中から見つけてね。
"#"(ハッシュ)マークで囲まれてるよ。
…確かにあった。
よって、WordPressには下記でログインする。
Username:user
Password:############
無事にログインが出来たら、
「Settings」→「Site Language」
で日本語を選択。これで日本語化完了。
4.phpMyAdminの有効化
(と、Bitnamiロゴの非表示化)
ご存じの通り、WordPressは
PHPとMySQL(またはMariaDB)で
稼働している。基本的には管理画面から
様々な設定を施すことが出来るので
あまりDBを気にすることはないが、
時にはDBを直接閲覧・編集をしたくなる
シーンも想定される。
そのため、Web画面からphpMyAdminに
アクセスできるように設定する。
(ついでに鬱陶しいロゴも非表示にする)
「1.インスタンスの作成」で作成した
キーペア(秘密鍵)を用いてSSH接続する。
ちなみに「WordPress Certified by Bitnami」は
OSが「Ubuntu 14.04」なので、ユーザーは
ubuntu
である(鍵認証なのでパスワード不要)。
phpMyAdminのアクセス制御ファイルである
「/home/bitnami/apps/phpmyadmin/conf/httpd-app.conf」
について、下記の箇所を修正する。
<IfVersion < 2.3 >
Order allow,deny
# Allow from 127.0.0.1
Allow from <自分のPCのIPアドレス>
Satisfy all
</IfVersion>
<IfVersion >= 2.3>
# Require local
Require all granted
</IfVersion>
Bitnamiのロゴを非表示にするには
下記コマンドを実行する。
sudo /opt/bitnami/apps/wordpress/bnconfig --disable_banner 1
最期に、Apacheを再起動する。
sudo /opt/bitnami/ctlscript.sh restart apache
これで「http://<Elastic IP>/phpmyadmin」へ
アクセスができるようになる。
DBAユーザー名およびパスワードは
/home/bitnami/apps/wordpress/htdocs/wp-config.php
に記載されている。
5.WordPressのカスタマイズ
あとは、管理画面からWordPressを
自分好みにカスタマイズするだけである。
正直、WordPress環境をこんなにあっさり
構築できるとは思っていなかった。
最近はレンタルサーバーやVPSでも
WordPressの導入支援機能があるみたいなので、
いずれにしても自分で一からインストールするより
遥かにラクにできるようである。
(当然その分自由度は下がると思うけど)
AWSではRDSというDB管理サービスがあり、
本格的なサイトを構築しようと思うと
このサービスを利用してアプリケーション
サーバとDBサーバを分離した方がいいらしい
けど、今回はお試しなので特に実施予定なし。
AWSでは、いとも簡単にサーバを
作ったり潰したりできるのが素晴らしい。
DR対策もバッチリだし、セキュアだし。
しかしやはり、コスト面は非常に心配。
無料期間が過ぎたら検討の余地アリですな。
流行りモンのLambdaも気が向いたら
触ってみようかね。
~参考にさせていただいたサイト~