Raspberry Pi Zero WでWordPressをdocker-composeで動かす

Raspberry Pi Zero Wにdocker-composeでWordPressの環境を構築して動かしてみました。

動作イメージ

はじめに

いろいろ試す用のWordPressの環境を構築してみました。作って壊すを簡単にできるDockerはいろいろ試す用の環境の構築に便利です。

ちょうどRaspbianをインストールした使っていないRaspberry Pi Zero Wがあったのでそこに構築してみましたので手順のメモを残します。

使用したRaspberry Pi Zero WとRaspbianの情報は以下です。

$ cat /proc/device-tree/model
Raspberry Pi Zero W Rev 1.1
$ lsb_release -a
No LSB modules are available.
Distributor ID: Raspbian
Description:    Raspbian GNU/Linux 11 (bullseye)
Release:        11
Codename:       bullseye

Dockerのインストール

まずはaptコマンドでインストールされているパッケージを更新しシステムの最新化を行います。

sudo apt update && sudo apt upgrade

システムの最新化が完了したらDockerを以下のコマンドでインストールします。

curl -fsSL https://get.docker.com -o get-docker.sh
sudo sh get-docker.sh

Dockerのインストールが完了したら以下のコマンドでユーザをdockerグループに追加します。

sudo usermod -aG docker ${USER}

ユーザがdockerグループに追加されているか以下のコマンドで確認します。

groups

Docker Composeのインストール

まずはpython3-pipをaptコマンドでインストールします。

sudo apt install python3-pip

つづいてpip3コマンドでDocker Composeをインストールします。

sudo pip3 install docker-compose

Docker Composeのインストールの確認を行います。

docker-compose -v

docker-compose.ymlの作成

はずはWordPressのdocker-composeを実行する作業用のディレクトリを作成します。

mkdir ~/wordpress

作成したディレクトリの中にdocker-compose.ymlを作成します。

Quickstart: Compose and WordPressのdocker-compose.ymlのdbのイメージをmysql:5.7からhypriot/rpi-mysqlに変更して利用しました。

~/wordpress/docker-compose.yml
version: "3.9"

services:
  db:
    #image: mysql:5.7
    image: hypriot/rpi-mysql
    volumes:
      - db_data:/var/lib/mysql
    restart: always
    environment:
      MYSQL_ROOT_PASSWORD: somewordpress
      MYSQL_DATABASE: wordpress
      MYSQL_USER: wordpress
      MYSQL_PASSWORD: wordpress

  wordpress:
    depends_on:
      - db
    image: wordpress:latest
    volumes:
      - wordpress_data:/var/www/html
    ports:
      - "8000:80"
    restart: always
    environment:
      WORDPRESS_DB_HOST: db
      WORDPRESS_DB_USER: wordpress
      WORDPRESS_DB_PASSWORD: wordpress
      WORDPRESS_DB_NAME: wordpress
volumes:
  db_data: {}
  wordpress_data: {}

hypriot/rpi-mysqlはRaspberry Pi互換のMySQLのイメージです。

WordPressの起動

それでは準備が整いましたのでWordPressを以下のコマンドで起動します。

cd ~/wordpress && docker-compose up -d

少し時間がかかりますが起動することができました。

WordPressのインストール画面

まとめ

Raspberry Pi Zero WにWordPressの環境をDockerで作成してみてRaspberry Pi Zero Wでは動作が遅く使い物にならないのが正直な感想です。

それなりのスペックのマシンにインストールするようにしましょう。

  • Raspberry Pi is a trademark of Raspberry Pi Ltd. — Raspberry Pi
  • Docker and the Docker logo are trademarks or registered trademarks of Docker, Inc. in the United States and/or other countries. Docker, Inc. and other parties may also have trademark rights in other terms used herein. — Trademark Guidelines - Docker