前回作成した Vagrant + VirtualBox + Ubuntu 24.04 環境にWordPressを導入したBoxを作成します。
構成は、
・Ubuntu 24.04
・Apache 2.4
・PHP 8.3
・MariaDB 10.11 (or MySQL 8.0)
・WordPress 6.5
です。
Box 追加・登録
前回作成したBox : swd_ubuntu2404.box を登録します。
コマンドプロンプト> vagrant box add swd/ubuntu-24.04 <path to box file>/swd_utunbu2404.box
新規フォルダでこのBoxを使って初期化します。
> vagrant init swd/utuntu-24.04
Vagrantfileをよしなに編集して vagrant を起動します。
> vagrant up
ssh
> vagrant ssh
VagrantfileVagrant.configure("2") do |config|
config.vm.box = "swd/ubuntu-24.04"
config.vm.network "forwarded_port", guest: 80, host: 8080
config.vm.network "private_network", ip: "192.168.33.10"
config.vm.synced_folder "./public/", "/var/www/html"
config.vm.provider "virtualbox" do |vb|
vb.memory = "2048"
end
end
OSはUbuntu 24.04 です。
ssh$ cat /etc/os-release
PRETTY_NAME="Ubuntu 24.04 LTS"
NAME="Ubuntu"
VERSION_ID="24.04"
VERSION="24.04 LTS (Noble Numbat)"
VERSION_CODENAME=noble
ID=ubuntu
ID_LIKE=debian
HOME_URL="https://www.ubuntu.com/"
SUPPORT_URL="https://help.ubuntu.com/"
BUG_REPORT_URL="https://bugs.launchpad.net/ubuntu/"
PRIVACY_POLICY_URL="https://www.ubuntu.com/legal/terms-and-policies/privacy-policy"
UBUNTU_CODENAME=noble
LOGO=ubuntu-logo
SSH最新版にしておきます。
$ sudo apt update && sudo apt upgrade
PHP インストール
OS標準のPHP ( 8.3 ) をインストールします。
SSH$ sudo apt install php
確認
$ php -v
PHP 8.3.6 (cli) (built: Jun 13 2024 15:23:20) (NTS)
Copyright (c) The PHP Group
Zend Engine v4.3.6, Copyright (c) Zend Technologies
with Zend OPcache v8.3.6, Copyright (c), by Zend Technologies
$ php -i | grep php.ini
Configuration File (php.ini) Path => /etc/php/8.3/cli
Loaded Configuration File => /etc/php/8.3/cli/php.ini
初期導入モジュールはこちら
SSH$ php -m
[PHP Modules]
calendar
Core
ctype
date
exif
FFI
fileinfo
filter
ftp
gettext
hash
iconv
json
libxml
openssl
pcntl
pcre
PDO
Phar
posix
random
readline
Reflection
session
shmop
sockets
sodium
SPL
standard
sysvmsg
sysvsem
sysvshm
tokenizer
Zend OPcache
zlib
[Zend Modules]
Zend OPcache
あと足りなさそうなモジュールをいれておきます。
参考)WordPress PHP環境 のPHP拡張機能
https://make.wordpress.org/hosting/handbook/server-environment/#php-extensions
SSH$ sudo apt install php-curl php-mbstring php-mysql php-imagick php-xml php-zip
※php-xml に php-dom がついてきます。
MariaDB インストール
MariaDB をインストールします。
SSHMariaDB
$ sudo apt install mariadb-server mariadb-client
確認
$ sudo dpkg -l | grep mariadb
起動確認
$ systemctl status mariadb
自動起動確認(chkconfig --list)
systemctl list-unit-files | grep mariadb
または
$ systemctl is-enabled mysql
MariaDB 10.11.8 でした。
code$ sudo mariadb
Welcome to the MariaDB monitor. Commands end with ; or \g.
Your MariaDB connection id is 31
Server version: 10.11.8-MariaDB-0ubuntu0.24.04.1 Ubuntu 24.04
Copyright (c) 2000, 2018, Oracle, MariaDB Corporation Ab and others.
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
MariaDB [(none)]>
MariaDB [(none)]> show databases;
+--------------------+
| Database |
+--------------------+
| information_schema |
| mysql |
| performance_schema |
| sys |
+--------------------+
4 rows in set (0.001 sec)
ひとまずBox保存
code> vagrant package --output swd_lamp.box
(MySQL インストール)
MySQL をインストールする場合は、こちら。
SSHMySQL
$ sudo apt install mysql-client mysql-server
確認
$ sudo dpkg -l | grep mysql
起動確認
$ systemctl status mysql
自動起動確認(chkconfig --list)
systemctl list-unit-files | grep mysql
または
$ systemctl is-enabled mysql
phpMyAdmin インストール
phpMyAdminをインストールします。
SSH$ sudo apt install phpmyadmin
(対話)
・Apache2 YES (スペースキーで*をセットすること)
・dbconfig-common NO
$ sudo systemctl restart apache2.service
ブラウザで phpMyAdmin のログイン画面が表示されればok
localhost:8080/phpMyAdmin
WordPress インストール
DB準備
MariaDBクライアントで、データベースを作成します。
code$ sudo mariadb
MariaDB [(none)]> CREATE DATABASE wordpress DEFAULT CHARACTER SET utf8;
MariaDB [(none)]> show databases;
+--------------------+
| Database |
+--------------------+
| information_schema |
| mysql |
| performance_schema |
| sys |
| wordpress |
+--------------------+
5 rows in set (0.000 sec)
ユーザーを作成します。
codeMariaDB [(none)]> GRANT ALL ON wordpress.* TO 'wordpress'@'localhost' IDENTIFIED BY 'password';
MariaDB [(none)]> FLUSH PRIVILEGES;
MariaDB [(none)]> SELECT user,host FROM mysql.user;
+-------------+-----------+
| User | Host |
+-------------+-----------+
| mariadb.sys | localhost |
| mysql | localhost |
| root | localhost |
| wordpress | localhost |
+-------------+-----------+
4 rows in set (0.001 sec)
WP CLI インストール
こちらを参考に、wp cli を入れます。
SSH$ mkdir bin; cd bin
$ curl -O https://raw.githubusercontent.com/wp-cli/builds/gh-pages/phar/wp-cli.phar
$ chmod +x wp-cli.phar
~/.bashrcへ追記alias wp='php ~/bin/wp-cli.phar'
composer
ついでに composer もインストールしておきます。
SSH$ curl -sS https://getcomposer.org/installer | php
$ mv composer.phar /usr/local/bin/composer
ここまででBox保存しておく!
code> vagrant package --output swd_wpcli.box
WordPress本体 インストール
WordPress をインストールするディレクトリへ移動し手作業します。
SSH$ cd /var/www/html/; mkdir wp; cd wp
$ wp core download --locale=ja
MariaDB で作成したデータベース、ユーザー、パスワードをセットした wp-config.php を作成します。
wp-config.php 設置$ wp core config --dbname=wordpress --dbuser=wordpress --dbpass=***** --dbhost=localhost --locale=ja --extra-php <<PHP
define('WP_DEBUG', true);
define('WP_DEBUG_LOG', true);
define('WP_DEBUG_DISPLAY', false);
define('DISALLOW_FILE_EDIT',true);
define('WP_POST_REVISIONS',false);
define('AUTOSAVE_INTERVAL',3600);
PHP
WordPress本体インストール初期設定$ wp core install --url=localhost:8080/wp --title=test --admin_user=***** --admin_password=***** --admin_email=*****
無事WordPressがインストールできました。
.htaccess
index.php
など設置し、localhost:8080/wp/wp-login.php からログインできるようになります。
以上!