Created
June 6, 2025 08:34
-
-
Save matsubo/cfaa37606f1a54327ea65610c9d3e1fb to your computer and use it in GitHub Desktop.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
.PHONY: setup up down restart logs shell fix-permissions clean status info help | |
# デフォルトターゲット | |
help: | |
@echo "WordPress開発環境 - 利用可能なコマンド:" | |
@echo "" | |
@echo "基本操作:" | |
@echo " make up - セットアップ + 起動" | |
@echo " make down - 停止" | |
@echo " make restart - 再起動" | |
@echo " make logs - ログを表示" | |
@echo "" | |
@echo "開発用:" | |
@echo " make shell - WordPressコンテナ内でシェル実行" | |
@echo " make db-shell - MySQLコンテナ内でシェル実行" | |
@echo " make fix-permissions - 権限を再設定" | |
@echo "" | |
@echo "管理用:" | |
@echo " make setup - セットアップのみ(起動しない)" | |
@echo " make clean - 環境をクリーンアップ" | |
@echo " make status - ステータス確認" | |
@echo " make info - 設定情報を表示" | |
@echo "" | |
# 初期セットアップ | |
setup: | |
@if [ ! -f .env ]; then \ | |
HOST=http://localhost:8080; \ | |
echo "🔧 環境をセットアップ中..."; \ | |
echo "UID=$$(id -u)" > .env; \ | |
echo "GID=$$(id -g)" >> .env; \ | |
echo "WP_HOME=\"$$HOST\"" >> .env; \ | |
echo "WP_SITEURL=\"$$HOST\"" >> .env; \ | |
mkdir -p themes plugins uploads database ai1wm-backups; \ | |
if [ "$$(uname)" = "Darwin" ]; then \ | |
sudo chown -R $$(id -u):$$(id -g) ./themes ./plugins ./uploads ./database ./ai1wm-backups 2>/dev/null || \ | |
chown -R $$(id -u):$$(id -g) ./themes ./plugins ./uploads ./database ./ai1wm-backups; \ | |
else \ | |
sudo chown -R $$(id -u):$$(id -g) ./themes ./plugins ./uploads ./database ./ai1wm-backups; \ | |
fi; \ | |
chmod -R 755 ./themes ./plugins ./uploads ./database ./ai1wm-backups; \ | |
echo "✅ セットアップ完了!"; \ | |
echo " 設定値: UID=$$(id -u), GID=$$(id -g)"; \ | |
echo " WP_HOME: $$HOST"; \ | |
echo " WordPressセキュリティキーを自動生成しました"; \ | |
else \ | |
echo "⚠️ .envファイルは既に存在します。セットアップをスキップします。"; \ | |
fi | |
up: setup | |
@echo "🚀 WordPressを起動中..." | |
@docker-compose up -d | |
@echo "" | |
@echo "✅ WordPress起動完了!" | |
@echo " 🌐 ブラウザで $$(grep WP_HOME .env | cut -d '=' -f2 | tr -d '\"')" にアクセスしてください | |
@echo "" | |
# 停止 | |
down: | |
@echo "⏹️ WordPressを停止中..." | |
@docker-compose down | |
@echo "✅ 停止完了!" | |
# 再起動 | |
restart: down up | |
# ログを表示 | |
logs: | |
@docker-compose logs -f | |
# WordPressコンテナでシェル実行 | |
shell: | |
@echo "🐚 WordPressコンテナに接続中..." | |
@docker-compose exec wordpress bash | |
# MySQLコンテナでシェル実行 | |
db-shell: | |
@echo "🗄️ MySQLコンテナに接続中..." | |
@docker-compose exec db mysql -u wordpress -pwordpress wordpress | |
# 権限を修正 | |
fix-permissions: | |
@echo "🔐 ファイル権限を修正中..." | |
@if [ "$$(uname)" = "Darwin" ]; then \ | |
sudo chown -R $$(id -u):$$(id -g) ./themes ./plugins ./uploads ./database ./ai1wm-backups 2>/dev/null || \ | |
chown -R $$(id -u):$$(id -g) ./themes ./plugins ./uploads ./database ./ai1wm-backups; \ | |
else \ | |
sudo chown -R $$(id -u):$$(id -g) ./themes ./plugins ./uploads ./database ./ai1wm-backups; \ | |
fi | |
@chmod -R 755 ./themes ./plugins ./uploads ./database ./ai1wm-backups | |
@echo "✅ 権限を修正しました" | |
@echo " 現在の値: UID=$$(id -u), GID=$$(id -g)" | |
# 環境をクリーンアップ | |
clean: | |
@echo "🧹 環境をクリーンアップ中..." | |
@docker-compose down -v --remove-orphans 2>/dev/null || true | |
@docker-compose rm -f 2>/dev/null || true | |
@rm -f .env | |
@echo "✅ クリーンアップ完了!" | |
# ステータス確認 | |
status: | |
@echo "📊 現在の状態:" | |
@docker-compose ps | |
# 設定情報を表示 | |
info: | |
@echo "ℹ️ 環境情報:" | |
@echo " Current UID: `id -u`" | |
@echo " Current GID: `id -g`" | |
@echo " OS: $$(uname)" | |
@echo "" | |
@echo "📋 Docker Compose サービス:" | |
@docker-compose config --services 2>/dev/null || echo " docker-compose.ymlが見つかりません" | |
@echo "" | |
@if [ -f .env ]; then \ | |
echo "🔧 環境変数 (.env):"; \ | |
cat .env | sed 's/^/ /'; \ | |
else \ | |
echo "⚠️ .envファイルが見つかりません(make setupを実行してください)"; \ | |
fi |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment