仮想環境、便利ですよね。

WordPressに限らず、Web系の勉強をしている場合に費用を大幅に削減してくれるし、自分好みにカスタマイズできるし。

とは言えども技術は必要。構築に手間取っている方もいらっしゃると思います。

というか、私は手間取りました……OTZ

では、メモ書き程度ですが、手順を記載しておきます。

目次

構築環境

ホスト環境

OS:Windows10

使用ソフト:WindowsPowerShell、Virtualbox(6.1)、Vagrant(2.2.6)

ゲスト環境

OS:CentOS8

使用ソフト:Apach、php、WordPress

Virtualboxの準備

Virtualboxをインストールします。

以下のサイトからダウンロードして、画面指示に従ってインストールして下さい。

Oracle VM VirtualBox
https://www.virtualbox.org/

Vagrantの準備

Vagrantをインストールします。

以下のサイトからダウンロードして、画面指示に従ってインストールして下さい。

Vagrant by HashiCorp
https://www.vagrantup.com/

ここまでの注意点

私が環境を構築した2019/12/25時点では、Vagrantの最新版である2.2.6がVirtualboxの最新版6.1に対応していないので、Vagrantのファイルを書き換えてVirtualboxに対応させる必要があります。

やり方は以下の記事を参考にして下さい。

Vagrant2.2.6とVirtualBox6.1で環境構築

仮想環境の保存先を作成

任意の場所にエクスプローラ等でフォルダを作成して下さい。

ここでは、D:\VirtualMachine\CentOS8を作成したとして説明します。

WindowPowerShellで仮想環境の作成先に移動

Windows PowerShellを起動し、D:\VirtualMachine\CentOS8に移動します。

コマンドは以下を実行します。

cd D:\VirtualMachine\CentOS8

Vagrantの設定

WindowsPowerShellで以下のコマンドを実行します。

vagrant add centos/8

vagrant init centos/8

すると、D:\VirtualMachine\CentOS8ディレクトリにVagrantfileというファイルが作成されています。このファイルの以下の部分をテキストエディタで編集します。

# config.vm.network "private_network", ip: "192.168.33.10"

config.vm.network "private_network", ip: "192.168.33.10"

ゲストOSの起動

WindowsPowerShellで以下のコマンドを実行して、しばらく待ちます。

Vagrant up

上手くいかないときはWindowsPowerShellがD:\VirtualMachine\CentOS8 にいるかを確認してみてください。

ゲストOSの準備

ここからはTera Termなどのターミナルソフトを使う人が多いですが、あまりソフトを沢山インストールしたくない人はVirtualboxのショートカットアイコンをダブルクリックして、実行中の仮想マシンを選択したら「表示」をクリックしてください。

図の左側の青く表示されているところが選択したマシンで、右上にある「表示」をクリックします。

このようなターミナルが現れるので、このウィンドウを選択して操作するようにしてください。(※上の図は未選択です。選択するとメニューバーやタイトルが黒くなります)

仮想マシンにログインします。

初期設定ではユーザ名、パスワード共にvagrantです。

ユーザを変更

以下のコマンドを実行してスーパーユーザに変更します。

su

パスワードはvagrantです。

日本語化しておきます

以下のコマンドを実行します。

localectl set-locale LANG=ja_JP.UTF8

localectl set-keymap jp106

ちなみに、「イコール」がどこか迷った人もいると思いますが、0キーの二つ右隣にあります。

ここまでやったら、WindowsPowerShellの方で再起動をかけます。

vagrant reloadを実行してください。

再起動がかかると、Virtualboxから起動したターミナルの画面が消えるので、再度表示してログインしてください。

suコマンドでスーパーユーザになっておいてください。

パッケージをアップデートしておきます。

yum update を実行してしばらく待ちます。

選択肢が表示されたらyを押してください。

パッケージが更新されました。

httpdとphpのインストール

以下のコマンドを実行します。

yum install httpd php wget php-mbstring

選択肢が出てきたら、またyを押して進めてください。

次に、以下のコマンドを実行します。

dnf -y install php php-mysqlnd php-pecl-json

systemctl restart httpd

次に、httpdの起動と自動起動設定をしておきます。

以下のコマンドを実行してください。

systemctl start httpd

systemctl enable httpd

PHPをhttpdで動作させるためにphp.iniファイルを書き換えます。

vi /etc/php.ini で、対象のファイルを開いてください。

;date.timezone = の部分をdate.timezone = "Asia/Tokyo" に書き換えます。

次にmbstringの設定を同様に書き換えていきます。

変更箇所は以下です。

mbstring.language = Japanese
mbstring.internal_encoding = UTF-8
mbstring.http_input = pass
mbstring.http_output = pass
mbstring.encoding_translation = Off
mbstring.detect_order = auto
mbstring.substitute_character = none
mbstring.func_overload = 0
mbstring.strict_detection = Off
mbstring.http_output_conv_mimetype=

HTTPデーモンを再起動します。

systemctl restart httpd

動作確認

ここで、動作確認用のphpのページを作ります。

vi /var/www/html/phpinfo.php

<?php phpinfo(); ?>

を記載して保存してください。

次に、ブラウザのアドレスバーに以下を入力してください。

http://192.168.33.10/phpinfo.php

ブラウザにphpの情報が表示されたら成功です。

Maria DBのインストール

以下のコマンドを実行してMaria DBをインストールします。

dnf -y install mariadb-server

Maria DBの自動起動設定および起動をします。

systemctl enable mariadb 自動起動設定です。

systemctl start mariadb 起動させます。

WordPressのダウンロードと解凍

WordPressの最新版をダウンロード

以下を実行してください。

dnf -y install wget

cd /var/www/html

wget https://ja.wordpress.org/latest-ja.tar.gz

WordPressを解凍

tar xvf latest-ja.tar.gz ダウンロードしたファイルの解凍。

chown -R apache:apache . apacheに権限を与える。

WordPress用のDBを作成

# mysql コマンドを実行します。

以下のコマンドを実行してDBを作成します。

CREATE DATABASE wordpress DEFAULT CHARACTER SET utf8;

WordPress用のMariaDBユーザを作成

GRANT ALL ON wordpress.* TO wordpress@localhost IDENTIFIED BY 'password';

FLUSH PRIVILEGES;

ここで exit を実行します。

mysql_secure_installation を実行します。質問が出てきたらすべてyで進めます。

パスワードを変更するように言われるので、ここでパスワード設定をしておいてください。初期状態では何も設定されていないので、Enterを押してください。

vi /etc/my.cnf で、my.cnfファイルを編集します。

編集前
編集後

ブラウザからWordPressを起動

ブラウザから http://192.168.33.10/ に アクセスしてください。

このようなページが表示されます。

「さあ、始めましょう!」をクリックしてください。

使いたいユーザ名とパスワードを打ち込んで「送信」を押してください。

wp-config.phpを作成するための情報が表示されます。

このように、エラーが出たら、プロンプトの画面の方で、cp wo-config-sample.php wp-config.phpを実行してwp-config.phpファイルを作成します。

vi wpconfig.phpでファイルを開き、以下のように書き換えます。

define( 'DB_NAME', 'wordpress' );

define( 'DB_USER', 'wordpress' );

define( 'DB_PASSWORD', 'password' );

define( 'DB_HOST', 'localhost' );

define( 'DB_CHARSET', 'utf8' );

改めてブラウザに戻り、「インストールを実行してください」をクリック。

このようなインストール画面が立ち上がるので、必要な情報を入力して「wordpressをインストール」を押してください。

ログイン画面が表示されたら、ユーザ名とパスワードを入力してログインしてください。

ダッシュボードにログインできました。

実環境からブログのデータを持ってきたい人は、実環境の方にログインした後、「ツール」-「エクスポート」でデータを保存して、仮想環境で「ツール」-「インポート」でインポートすればOK。

テーマのデザインをするという用途に限れば、これで行けると思います。

間違いがないかヒヤヒヤしつつですが、できないという人は参考にしてみてください。

参考にしたサイト