#!/bin/bash
WIPE=false
if [ "$1" == "--wipe" ]; then
WIPE=true
fi
# 載入 .env 中的變數
if [ -f .env ]; then
export $(grep -v '^#' .env | xargs)
echo "📦 .env 載入完成"
else
echo "❌ 沒有找到 .env,無法載入環境變數"
exit 1
# 使用 .env 中的 APP_NAME 作為 project name
PROJECT_NAME="${APP_NAME}"
NETWORK_NAME="${APP_NAME}_network"
# 組合額外參數(如果有需要清除 volume 與 image)
EXTRA_FLAGS=""
if [ "$WIPE" == "true" ]; then
EXTRA_FLAGS="-v --rmi all"
echo "🛑 Stopping APP services..."
docker compose -p "$PROJECT_NAME" -f docker-compose.yml down $EXTRA_FLAGS
# 檢查並建立 network(如果不存在)
if ! docker network ls --format '{{.Name}}' | grep -wq "$NETWORK_NAME"; then
echo "🔌 Docker 網路 $NETWORK_NAME 不存在"
docker network rm $NETWORK_NAME
echo "🔌 Docker 網路 $NETWORK_NAME 已刪除"
echo "🧹 所有資料(volumes, image)已清除!"
echo "✅ 所有服務 $PROJECT_NAME 已成功關閉。"