開発者ガイド (DEV_DOC)
1. 環境セットアップ
前提条件
- Linux OS (Debian/Ubuntu/Alpine)
- Docker & Docker Compose Plugin
- Make
- Git
設定
- リポジトリのクローン:
git clone ... - 環境変数:
srcs/.env.example(存在する場合)をコピーするか、srcs/.envを作成します。 必要な変数にはDOMAIN_NAME,MYSQL_ROOT_PASSWORD,MYSQL_USER,MYSQL_PASSWORD,WP_ADMIN_PASSWORDなどがあります。 - データディレクトリ: Makefileは以下の場所にデータディレクトリを自動的に作成します:
/home/${USER}/data/wordpress/home/${USER}/data/mariadb
2. ビルドと起動
このプロジェクトでは、Docker Composeコマンドを簡素化するために Makefile を使用しています。
ビルドと実行:
bashmake all # または単に 'make'これは
docker compose -f srcs/docker-compose.yml up -d --buildを実行します。特定のサービスの再ビルド:
bashdocker compose -f srcs/docker-compose.yml up -d --build <service_name>例:
docker compose ... --build nginx
3. コンテナ管理
- コンテナ一覧表示:
docker ps - ログの表示:bash
docker logs <container_name> # ログのフォロー(リアルタイム表示) docker logs -f nginx - コンテナシェルへのアクセス:bash
docker exec -it <container_name> /bin/bash # Alpineコンテナ (website) の場合は /bin/sh を使用 docker exec -it website /bin/sh
4. データ永続化
データは、ホストマシンへの Docker Bind Mounts を使用して永続化されます。これにより、コンテナが削除されても(make down)、データは残ります。
データベース:
- コンテナパス:
/var/lib/mysql - ホストパス:
/home/${USER}/data/mariadb
- コンテナパス:
WordPressファイル:
- コンテナパス:
/var/www/html - ホストパス:
/home/${USER}/data/wordpress
- コンテナパス:
データを完全にリセットするには(新規インストールをシミュレート):
bash
make fclean警告: これはデータディレクトリ /home/${USER}/data/* を削除します。