仮想環境、便利ですよね。
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。
テーマのデザインをするという用途に限れば、これで行けると思います。
間違いがないかヒヤヒヤしつつですが、できないという人は参考にしてみてください。