スポンサーリンク

コードが書ける!数式が書ける!AAが書ける!スタンプが貼れる!

無料の匿名掲示板型SNS「このはちゃんねる

新規会員募集中!

【日記】WordPressをNginxとMariaDBの環境にデプロイした【Vagrant】

283, 2020-01-31

目次

そうだ、WordPressを入れよう

WordPress関連の仕事は多い。にもかかわらず、私は自分の環境にWordPressの実行環境を持っていなかった。
今回もWordPress絡みの案件で相談が来たが、実行環境が無いので検証するのが手間だった。

これはいかん!

ということで、自分のパソコンにWordPressの実行環境を作ることにした。

※この記事には具体的なコードなどは出てきません。技術的記事ではなく日記としてお楽しみください

環境構築

構築する環境のスペックは↓の通り

  • Vagrant
  • CentOS7.2
  • Nginx
  • MariaDB

例によって今流行りのVagrantという仮想環境ツールを使う。これを使うとパソコン一台に色んな環境のサーバーを構築することが出来る。
たとえば一台のパソコンの中に、WordPressを動作させるCentOSのサーバーをひとつ用意して、それとは別にDjangoを動作させるUbuntuのサーバーをひとつ用意することも出来る。
仕事に限らず趣味でもそうだが、サーバーは案件ごとにばらばらなことが多い。このため一つのサーバーを使いまわすというのは現実的ではない。そこでVagrantを使うと、簡単に環境ごとに構築ができるようになるわけである。

便利!

Vagrantは開発環境に特化したツールだが、本番環境にも使えるDockerというツールもある。これはサーバーごとパッケージングして環境にデプロイできるようにするというものだ。今流行りのコンテナ技術である。
DockerではDockerfileというファイルを利用してコンテナ構築を自動化することが出来る。これを使うことで本番環境ではコマンド1つでコンテナを構築して走らせることができるようになるという代物である。
私も仕事で使ったことがあるが、一度Dockerfileを書いてしまえば色んな環境でコンテナを走らせることが出来るようになるので便利と言える。
ただ、あまり大規模なアプリには向いていない。特にcronで定時処理を実行するようなアプリには向いていないと言える。

サーバーはCentOSだ。Ubuntuでも良かったのだが、最近は練度を上げるためにCentOSを使うことが多い。

WebサーバーはNginxを使う。Apacheと比べて動作が軽快で、最近はすっかりNginxの案件が増えている。

DBサーバーはMariaDBだ。MySQLの評判が最近すこぶる良くない。聞こえてくるのは不平不満ばかりだ。オラクルはせっかくの資産を有効活用できないでいるらしい。

構築

まず環境用のディレクトリを1つ作ってその中でvagrant initを実行し、Vagrantfileを作る。あとはVagrantfileをいい感じに調整してvagrant upすれば環境が立ち上がってくれる。この環境にまずはMariaDBを入れる。

MariaDBのインストールは簡単だ。私の環境では↓のコマンドで全部済んだ。

# yum install -y mariadb mariadb-server

あとは↓のようにしてMariaDBを起動して、ついでに永続化もしておく。

# systemctl start mariadb
# systemctl enable mariadb

あとはMariaDBの文字コードの設定を済ませて、WordPress用のデータベースとユーザーを作って終わり。
これで終わりだが、ここで終わるとあまりセキュアな構築にならないので、本番環境では真似しないで欲しい。

セキュアな構築手順については↓が詳しかった。


次にNginxをインストールする。
NginxはCentOS7ではリポジトリが無いのでこれを手動で加える。


PHPも入っていないので入れる。今回は最新の7.4を入れた。Nginxで使うモジュールも入れる。

NginxとPHPの連携

NginxとPHPの連携にはPHP-FPMというものを使う。ApacheではモジュールとしてPHPを動作させることが出来たが、Nginxではプロセス間通信でPHPと連携する必要がある。ここら辺はApacheのほうが便利に感じた。プロセス間通信にしたのは何か理由でもあるのだろうか?

なんやかんやあって

NginxとPHPの連携が手間だったがなんやかんやあって動作させることが出来た。
あとはプロジェクトルートにWordPressを配置してブラウザからアクセスすればWordPressのインストールを実行できた。

反省

具体的なコードや設定は失念したというか、ログに取っていなかったのであまり品質の良くない記事になってしまった。
次はログを取りながら構築してみたい。

覚えてたらね

投稿者名です。64字以内で入力してください。

必要な場合はEメールアドレスを入力してください(全体に公開されます)。

投稿する内容です。

スポンサーリンク

スポンサーリンク

スポンサーリンク

スポンサーリンク