ファイル構成
project-root/
│── docker-compose.yml # Docker Compose の設定ファイル
│── .env # 環境変数(データベース情報などを設定)
各ファイル
docker-compose.yml
services:
wordpress:
image: wordpress:6.7.1
container_name: wordpress
restart: always
ports:
- "80:80"
depends_on:
- db
environment:
WORDPRESS_DB_HOST: ${WORDPRESS_DB_HOST}
WORDPRESS_DB_USER: ${WORDPRESS_DB_USER}
WORDPRESS_DB_PASSWORD: ${WORDPRESS_DB_PASSWORD}
WORDPRESS_DB_NAME: ${WORDPRESS_DB_NAME}
volumes:
- ./wordpress:/var/www/html
logging:
driver: "json-file"
options:
max-size: "3m"
max-file: "1"
db:
image: mysql:8.4
container_name: mysql
restart: always
environment:
MYSQL_ROOT_PASSWORD: ${MYSQL_ROOT_PASSWORD}
MYSQL_DATABASE: ${MYSQL_DATABASE}
MYSQL_USER: ${MYSQL_USER}
MYSQL_PASSWORD: ${MYSQL_PASSWORD}
volumes:
- wordpress_db_data:/var/lib/mysql
logging:
driver: "json-file"
options:
max-size: "3m"
max-file: "1"
volumes:
wordpress_db_data:
.env
# 共通のデータベースユーザー
DB_USER=<your_database_user>
DB_PASSWORD=<your_database_password>
DB_NAME=<your_database_name>
# WordPress 用
WORDPRESS_DB_HOST=db
WORDPRESS_DB_USER=${DB_USER}
WORDPRESS_DB_PASSWORD=${DB_PASSWORD}
WORDPRESS_DB_NAME=${DB_NAME}
# MySQL 用
MYSQL_USER=${DB_USER}
MYSQL_PASSWORD=${DB_PASSWORD}
MYSQL_DATABASE=${DB_NAME}
# MySQL root パスワード
MYSQL_ROOT_PASSWORD=<your_root_password>