HELPER VPS

VPS への WordPress のインストール、WordPress、LEMP、Docker のイメージ別の方法

WordPress は自分のサーバーに直接インストールすれば、プラグイン、テーマ、サーバー設定まですべて自由に決められます。サーバー作成時に選ぶイメージに応じて、最も合ったインストール方法を選んで進めてください。

3つの方法から選ぶ

HELPER VPS では、サーバー作成時にイメージを選ぶだけで、WordPress の準備の手間が大きく減ります。自分の状況に合った方法を1つ選んでください。

  • WordPress のイメージ: Ubuntu 24.04 上に Nginx、MySQL、PHP と WordPress がインストールされます。ブラウザでインストール画面を済ませるだけなので、ブログを1つ開く最も早い方法です。
  • LEMP のイメージ: Nginx、MySQL、PHP が用意されたサーバーに WordPress を自分で載せます。複数のサイトを1台のサーバーに置く場合や、フォルダ構成と設定を自分で決めたい場合に適しています。
  • Docker のイメージ: WordPress とデータベースをコンテナで起動します。サイトを別のサーバーに移したり、同じ環境を何度も作ったりするときに便利です。

小さなブログなら最小の 12GB 一般プランで始めても十分で、ネットショップや訪問者の多いサイトなら、ディスクの速い NVMe 高性能サーバーでページがより軽く開きます。サイズ別のおすすめは WordPress VPS のページにあります。

まずドメインを接続する

ドメインを使う予定なら、インストール前に接続しておけば HTTPS 証明書まで一度に取得できます。ドメインを購入したサービスの DNS 管理画面で、次の2つのレコードを作成します。

  • A レコード: 名前は @(と www)、値はサーバーの IPv4 アドレス
  • AAAA レコード: 名前は @(と www)、値はサーバーの IPv6 アドレス

レコードが反映されるまでには、通常数分から数時間かかります。サーバーで ping -c 3 example.com を実行し、自分のサーバーの IP が表示されれば準備完了です。下のコマンドの example.com は、自分のドメインに置き換えて入力してください。

方法1. WordPress のイメージですぐに始める

  • サーバー作成画面でリージョンとサイズを選び、イメージ一覧から WordPress を選択します。
  • サーバーが実行中になったら、ブラウザで http://YOUR_SERVER_IP を開きます。
  • 言語を選び、サイトのタイトル、管理者のユーザー名、パスワード、メールアドレスを決めればインストール完了です。
  • http://YOUR_SERVER_IP/wp-admin で管理画面に入ります。

管理者パスワードは長く複雑なものにし、ユーザー名は admin ではなく自分だけが知っている名前にすれば、ログイン試行に強くなります。ドメインの接続と HTTPS は、下の HTTPS のステップをそのまま進めてください。

方法2. LEMP サーバーに自分でインストール

LEMP のイメージには、Nginx、MySQL、PHP-FPM がすでにインストールされています。WordPress に必要な PHP の拡張、データベース、サイトの設定を加えるだけです。Ubuntu 24.04 を基準にしており、ほかの Ubuntu や Debian でも同じ手順です。

ステップ1. PHP の拡張をインストール

ターミナル
apt update
apt install -y php-mysql php-curl php-gd php-mbstring php-xml php-zip php-intl php-imagick
php -v
ls /run/php/

php -v は PHP のバージョンを、ls /run/php/ は PHP-FPM のソケット名を表示します。Ubuntu 24.04 は PHP 8.3 なので php8.3-fpm.sock、Debian 13 は PHP 8.4 なので php8.4-fpm.sock が表示されます。下の Nginx の設定に、この名前をそのまま使います。

ステップ2. データベースとユーザーを作成

root で接続した状態で mysql を実行すれば、パスワードなしで MySQL に入れます。下の4行で、WordPress 専用のデータベースとユーザーを作成します。パスワードは長いものに変えて入れ、メモしておいてください。

mysql
CREATE DATABASE wordpress DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
CREATE USER 'wpuser'@'localhost' IDENTIFIED BY 'change_this_long_password';
GRANT ALL PRIVILEGES ON wordpress.* TO 'wpuser'@'localhost';
FLUSH PRIVILEGES;
EXIT;

ステップ3. WordPress をダウンロード

ターミナル
cd /var/www
curl -O https://wordpress.org/latest.tar.gz
tar xzf latest.tar.gz && rm latest.tar.gz
chown -R www-data:www-data /var/www/wordpress

フォルダの所有者をウェブサーバーのユーザー(www-data)に変えておけば、ブラウザのインストール画面が設定ファイルを直接作成し、プラグインやテーマも管理画面からすぐにインストールできます。

ステップ4. Nginx のサイト設定

/etc/nginx/sites-available/wordpress
server {
    listen 80;
    listen [::]:80;
    server_name example.com www.example.com;
    root /var/www/wordpress;
    index index.php;
    client_max_body_size 64m;

    location / {
        try_files $uri $uri/ /index.php?$args;
    }
    location ~ \.php$ {
        include snippets/fastcgi-php.conf;
        fastcgi_pass unix:/run/php/php8.3-fpm.sock;
    }
    location ~ /\.ht {
        deny all;
    }
}
ターミナル
ln -s /etc/nginx/sites-available/wordpress /etc/nginx/sites-enabled/
nginx -t && systemctl reload nginx

nginx -t が syntax is ok、test is successful と表示すれば、設定は正しいです。まだドメインがない場合は、server_name に _ を書き、デフォルトサイト(/etc/nginx/sites-enabled/default)のリンクを削除すれば、IP アドレスで開けます。

ステップ5. ブラウザでインストールを完了

http://example.com を開くと、インストール画面が表示されます。データベース名 wordpress、ユーザー wpuser、ステップ2で決めたパスワード、ホスト localhost を入力し、サイトのタイトルと管理者アカウントを決めれば完了です。

方法3. Docker Compose でインストール

Docker のイメージで作成したサーバーや、Docker を自分でインストールしたサーバーなら、ファイル1つで WordPress と MariaDB を一緒に起動できます。2つのパスワードは長いものに変えて入れてください。

ターミナル
mkdir -p /opt/wordpress && cd /opt/wordpress
cat > compose.yaml <<'EOF'
services:
  db:
    image: mariadb:11
    restart: unless-stopped
    environment:
      MARIADB_DATABASE: wordpress
      MARIADB_USER: wpuser
      MARIADB_PASSWORD: change_this_long_password
      MARIADB_ROOT_PASSWORD: change_this_other_password
    volumes:
      - db:/var/lib/mysql
  wordpress:
    image: wordpress:latest
    restart: unless-stopped
    depends_on:
      - db
    ports:
      - "80:80"
    environment:
      WORDPRESS_DB_HOST: db
      WORDPRESS_DB_USER: wpuser
      WORDPRESS_DB_PASSWORD: change_this_long_password
      WORDPRESS_DB_NAME: wordpress
    volumes:
      - wp:/var/www/html
volumes:
  db:
  wp:
EOF
docker compose up -d

http://YOUR_SERVER_IP を開くと、インストール画面が表示されます。データベースの情報はファイルにすでに入っているので、サイトのタイトルと管理者アカウントを決めるだけです。記事とアップロードファイルは wp ボリュームに、データベースは db ボリュームに残るので、コンテナを新しいバージョンに入れ替えてもそのまま維持されます。

Docker で起動したサイトに HTTPS を設定するときは、手前にリバースプロキシを置く方法がすっきりしています。画面でドメインを入れるだけで証明書まで自動で設定する Coolify や Dokploy のイメージを使えば、さらに簡単です。

HTTPS 証明書の設定

WordPress のイメージと LEMP のサーバーでは、Certbot で Let's Encrypt の無料証明書を取得し、Nginx にすぐに設定できます。ドメインがサーバーの IP を向いている必要があります。

ターミナル
apt install -y certbot python3-certbot-nginx
certbot --nginx -d example.com -d www.example.com

メールアドレスを入れて規約に同意すると証明書が発行され、Nginx の設定に HTTPS が追加されます。証明書は Certbot が自動で更新します。次に、WordPress の管理画面の「設定 > 一般」で、WordPress アドレスとサイトアドレスを https に変更します。ファイアウォールを使うなら、ufw allow 80,443/tcp で2つのポートを開けておいてください。

インストール後にしておきたい設定

  • パーマリンク: 「設定 > パーマリンク」で投稿名の形式を選ぶと、アドレスが読みやすくなります。上の Nginx 設定の try_files の行が、このアドレスを処理します。
  • アップロードサイズ: 大きな画像やテーマファイルをアップロードするには、Nginx の client_max_body_size と一緒に、/etc/php/8.3/fpm/php.ini の upload_max_filesize、post_max_size を同じサイズに上げ、systemctl restart php8.3-fpm を実行します。
  • メール送信: 会員登録、パスワードの再設定、注文通知のメールは、SMTP プラグインでメール配信サービスの587番または465番ポートにつなぎます。方法はメール送信ガイドにあります。
  • 更新: WordPress 本体、プラグイン、テーマは管理画面から、サーバーは apt update && apt upgrade -y で、定期的に最新にしておきます。
  • バックアップ: 記事とデータベースは作り直せない資産です。サーバー作成時に自動バックアップをオンにしておくか、バックアップとスナップショットのガイドの方法でコピーを残しておいてください。

最初からインストールし直したいときは、サーバーページの再インストールで WordPress のイメージを選び直せば、クリーンな状態に戻ります。ディスクが新しくインストールされるので、必要な記事は「ツール > エクスポート」で先にダウンロードしておき、手順は再インストールガイドを参考にしてください。

あわせて読みたいガイド

このガイドに続けて設定しておくとよい内容です。

すべてのガイドを見る