🏊‍♂️

とにかく4時間でローカルのDocker上でWordpress+bbpress+buddypressを起動する

に公開

2025/08/02

14:45

ZennもQiitaも続かないのでここで記録。
Docker Desktopはインストール済みです。

ゴミのコンテナとイメージの削除

malzy@pc MINGW64 ~/projects/202508_docker
$ docker image ls | grep -v 64c
REPOSITORY        TAG       IMAGE ID       CREATED         SIZE
ruby              latest    6d367d8d0d54   5 months ago    1GB
nginx             latest    b52e0b094bc0   5 months ago    192MB
python            latest    36d17f72f4f3   5 months ago    1.02GB
ubuntu            latest    a04dc4851cbc   6 months ago    78.1MB
<none>            <none>    f85e7118991c   6 months ago    77.9MB
ubuntu            22.04     a24be041d957   6 months ago    77.9MB
mysql             latest    fa262c3a6564   6 months ago    797MB
hello-world       latest    74cc54e27dc4   6 months ago    10.1kB
ubuntu            23.10     77081d4f1e72   14 months ago   71.1MB
nginx             1.25      e784f4560448   15 months ago   188MB
mysql             8.2.0     bc861cf238f2   19 months ago   619MB
mysql             8.0.35    77f16659c129   19 months ago   591MB
ruby              3.2.2     61c637c1c992   20 months ago   987MB
axllent/mailpit   v1.10.1   1f6407e01b88   20 months ago   27.2MB
malzy@pc MINGW64 ~/projects/202508_docker
$ docker image ls | grep -v 64c | awk '{print $3}'
IMAGE
6d367d8d0d54
b52e0b094bc0
36d17f72f4f3
a04dc4851cbc
a24be041d957
f85e7118991c
fa262c3a6564
74cc54e27dc4
77081d4f1e72
e784f4560448
bc861cf238f2
77f16659c129
61c637c1c992
1f6407e01b88

copy

関数的記述よりパイプラインが思考の流れに自然。こういうコマンド置換は関数的であまり使わずxargs 多用気味ですが、とにかくワンライナー最高。

malzy@pc MINGW64 ~/projects/202508_docker
$ docker image rm $(docker image ls | grep -v 64c | awk '{print $3}')
Untagged: ruby:latest
Untagged: ruby@sha256:d780a9b44dc5e57a4968d3e4b086bbdd9b595f06d747da10b29e568386fe1dd9
Deleted: sha256:6d367d8d0d5477e1d92c566535960647f24cd6539e084c2d8a67a991b8495c15
Deleted: sha256:09eb284fa2f3c75e8f1ce1a68a0493274bd5e9c53657b0a176c94c967c951348
Deleted: sha256:dbc6ea46e3935b5f996b6d43519adf827afce432a0a17bf9524b5cdb1fe4c0cd
Deleted: sha256:c63ca5bcff586288ca3cc6671c9b905eef374557296aff2c0671d15c282b4922
Untagged: nginx:latest
Untagged: nginx@sha256:9d6b58feebd2dbd3c56ab5853333d627cc6e281011cfd6050fa4bcf2072c9496
Deleted: sha256:b52e0b094bc0e26c9eddc9e4ab7a64ce0033c3360d8b7ad4ff4132c4e03e8f7b
Deleted: sha256:3c8b88c16794e3082397557e5482f5a04a6c295cec37919c65c234e1a3645e80
Deleted: sha256:d5c83383666c732fcb30d7e25c74c2e0884c262f2e497cc9f2844870980311d8
Deleted: sha256:d62b6301e685a7cdc3bb3b1508a959e4710a707ea2f680f848c19a9ad74ac6a7
Deleted: sha256:d443654bda4a04f31ba6bd39bed82a053a17f2974b401fef552e4e88d6546db8
Deleted: sha256:129409d5d363e5d5af273f0b2a90237f708ed9972f8d58a4dbcd17f1abbabe21
Deleted: sha256:a3a2912e392a24d8c7dde076a3778c6eded8839660963ac2084e051eb6931c13
Deleted: sha256:5f1ee22ffb5e68686db3dcb6584eb1c73b5570615b0f14fabb070b96117e351d
Untagged: python:latest
Untagged: python@sha256:bc336add24c507d3a11b68a08fe694877faae3eab2d0e18b0653097f1a0db9f3
Deleted: sha256:36d17f72f4f3630dbc93a0b2fe6f7e61179c597cbef32f815b34f70ef1e402f2

copy

Docker compose

わすれたので(調べるのがめんどくさいので)、chatgptで生成してもらいました。流行りのバイブコーディング(なお、バイブコーディングは否定派です)。

version: '3.9'

services:
  wordpress:
    image: wordpress:6.5-php8.1-apache
    container_name: wp-app
    ports:
      - "8000:80"
    environment:
      WORDPRESS_DB_HOST: db
      WORDPRESS_DB_NAME: wp_db
      WORDPRESS_DB_USER: wp_user
      WORDPRESS_DB_PASSWORD: wp_pass
    volumes:
      - ./wp-content:/var/www/html/wp-content

  db:
    image: mysql:5.7
    container_name: wp-db
    restart: always
    environment:
      MYSQL_DATABASE: wp_db
      MYSQL_USER: wp_user
      MYSQL_PASSWORD: wp_pass
      MYSQL_ROOT_PASSWORD: rootpass
    volumes:
      - db_data:/var/lib/mysql

volumes:
  db_data:
malzy@pc MINGW64 ~/projects/202508_docker$ docker-compose up -d
time="2025-08-02T15:09:31+09:00" level=warning msg="C:\\Users\XXXXX\X\\docker-compose.yml: the attribute `version` is obsolete, it will be ignored, please remove it to avoid potential confusion"
[+] Running 5/34
 - wordpress [⣿⣿⣤⣿⣿⣿⣿⣶⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀] Pulling                                                                                                      23.7s
   ✔ f11c1adaa26e Pull complete                                                                                                                    9.5s
   ✔ 91c1fd48de30 Pull complete                                                                                                                    9.6s
   - c3b3bda7c6d1 Downloading [===============================>                   ]   65.2MB/104.3MB                                              19.8s
   ✔ 65a68eb681dd Download complete                                                                                                                2.4s
   - 35406f9afc7f Downloading [======================================>            ]  13.05MB/17.17MB                                              19.8s
   ✔ a7d29e357509 Download complete                                              

ポートは8000です(yamlより)

Wordpress初期画面

こんな簡単にLAMP+WPがあがっていいのだろうか。いま15:15。余計な作業もしながら30分しかたってない!昔は、VM、Linux、Apache、Mysql、PHP、WPを順番にインストールして文字化けと戦ったりして、最低半日かかってましたよ。

適当に。

15:19

プラグイン

bbPress。

もう一つ、BuddyPress。

有効化。
bbpressが真っ白。
buddypressのショートコマンドが効かない・・・。

docker-compose upを実行したディレクトリの間違いに気づいてやり直し。

16:16

buddypressから。ひとつずつ。
buddypress無効化。

これにチェックを入れた。

buddypressを有効化したら、ログインと登録のバナーがでてきた。

buddypress有効化。
仮のユーザを登録して有効化。

buddypress方式のプロフィール画面に変更された模様。

bbpress。インストール後。

有効化。「フォーラム」が追加された。

フォーラム表示されない。真っ白。

17:05

テーマを「Twenty Twenty four」→「Twenty Twenty two」に変更→改善せず。

ドトールに電源がなく、バッテリーが切れたので続きは明日やります。

Discussion