Skip to content

Raspberry Pi 3B 32bitにDockerを入れてWordPressを構築する

こんにちは。WordPressのローカル環境を構築するために、Raspberry Pi 3BにDockerでWordPressを構築しました。現在のRaspberry Piの主流は64bitですから32bit + Dockerで構築した例は少なかったため記録として記事にします。

DockerとDocker Composeをインストールする

まずはDockerとDocker Composeを構築します。構築済みの方は次の手順に進んでください。

Dockerのインストール

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

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

操作するユーザー(pi)をグループdockerに属させます。piはユーザー名に置き換えてください。

sudo usermod -aG docker pi

変更を反映させるために再起動します。

sudo shutdown -r now

動作確認

nginxコンテナを起動して正常に動いているか確認します。

docker run --name some-nginx -d -p 8080:80 nginx

http://[Raspberry Pi のIPアドレス]:8080 にアクセスします。

a7bc7a16 image

上記のような画面が表示されればOKです。

起動したnginxコンテナを終了します。コンテナIDを以下で確認します。

docker ps

CONTAINER ID の値をメモして、以下のコマンドを実行します。

docker stop [CONTAINER ID]

Docker Composeのインストール

pip環境をインストールします。

sudo apt install python3-dev -y
sudo apt install python3-pip -y

Docker Composeをインストールします。

sudo pip3 install docker-compose

以下のコマンドでDocker Composeのバージョンが表示されればOKです。

docker-compose -v

WordPressコンテナを起動する

4fdff2f7 image

Docker + Docker Compose環境が構築できたら、WordPressコンテナを起動します。

ホームディレクトリなどに任意のフォルダを作成します。

mkdir ~/dockerWordPress

docker-compose.ymlを作成します。

vim docker-compose.yml

docker-compose.ymlは以下です。

version: '3.8'

services:
  db:
    image: yobasystems/alpine-mariadb:10.5
    volumes:
      - db_data:/var/lib/mysql
    restart: always
    ports:
      - "3306:3306"
    environment:
      MYSQL_ROOT_PASSWORD: password
      MYSQL_DATABASE: wordpress
      MYSQL_USER: test_user
      MYSQL_PASSWORD: user_password

  wordpress:
    depends_on:
      - db
    image: arm32v7/wordpress:latest
    volumes:
      - ./html:/var/www/html
    ports:
      - "8080:80"
    restart: always
    environment:
      WORDPRESS_DB_HOST: db:3306
      WORDPRESS_DB_USER: test_user
      WORDPRESS_DB_PASSWORD: user_password

volumes:
  db_data:
  html:

ポイント

  • 32bitの場合はMySQLイメージを読み込めないため、yobasystems/alpine-mariadb:10.5 を使用します。
  • wordpressのvolumes はローカルディレクトリを指定して、wp-config.phpなどを編集できるようにします。docker-compose.yml を作成したディレクトリにhtml ディレクトリが作成され、その配下にwordpressのファイルが展開されます。

docker-compose.yml が作成できたら、コンテナを立ち上げます。以下のコマンドを実行してください。

docker-compose up

(バックグラウンドで起動するならdocker-compose up -d

WordPressにアクセスする

コンテナの起動が完了したら、http://[ラズパイip]:8080 にアクセスします。初回セットアップが開くので必要な情報を入力します。

セットアップが完了したら、http://[ラズパイip]:8080/wp-admin/ でログイン画面にアクセスします。

f9f562b9 image

コンテナを終了する

WordPressのサイトのアクセスがと管理画面のログインが完了したら、docker-compose.yml があるディレクトリに移動して、以下のコマンドでコンテナを終了します。

docker-compose down

おわりに

Dockerを使うことで環境構築が非常に簡単になりました。特にSQLやnginxなどのアプリケーションを同時にセットアップできるのは大きなメリットだと思います。

Raspberry Pi 3BでもWordPressはそこそこな速度で動くので、ローカルの検証環境として便利です。クラウドに持っていく際はAll-in-One WP Migrationを使って移行しようかな。

カテゴリRaspberry PiWordPress

Be First to Comment

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

コメントは日本語で入力してください。(スパム対策)

CAPTCHA