## 🏗️ 新增功能 - **shared/**: 完整的基础组件部署方案 - docker-compose.yml: 统一编排所有基础服务 - .env.example: 标准化环境变量配置 - prometheus/prometheus.yml: 监控配置 - bin/up.sh & down.sh: 一键部署脚本 - README.md: 完整的使用文档 ## 🛠️ 核心服务 - **数据库层**: PostgreSQL 16 + MySQL 8 (统一密码: 123456) - **缓存层**: Redis 7 (密码: 123456) - **代码管理**: GitLab CE + Gitea (双代码仓库) - **镜像仓库**: Harbor (Docker Registry) - **监控层**: Prometheus + Grafana + cAdvisor - **网关反代**: Traefik v3.1 ## 🔧 技术优化 - 所有端口统一使用 2xx80 系列,避免端口冲突 - 统一网络架构 (core network),支持多项目接入 - 完善的健康检查和服务依赖配置 - 支持 ARM64 架构 (MySQL 8 兼容性修复) ## 📚 文档更新 - SYSTEM-CONFIG.md: 系统配置文档完善 - harbor/README.md: Harbor 模块使用说明 - docs/: 完整的部署和运维文档 ## 🚀 部署说明 所有服务已成功启动并通过验证: - GitLab: http://localhost:28082 (root/SecurePass2024!) - Gitea: http://localhost:23000 - Harbor: http://localhost:28081 - Grafana: http://localhost:23001 (admin/123456) 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <[email protected]>
95 lines
2.1 KiB
Bash
Executable File
95 lines
2.1 KiB
Bash
Executable File
#!/bin/bash
|
|
|
|
# 基础组件停止脚本
|
|
# 作者: Claude Code
|
|
# 版本: 1.0
|
|
|
|
set -e
|
|
|
|
# 颜色定义
|
|
RED='\033[0;31m'
|
|
GREEN='\033[0;32m'
|
|
YELLOW='\033[1;33m'
|
|
BLUE='\033[0;34m'
|
|
NC='\033[0m' # No Color
|
|
|
|
# 打印带颜色的消息
|
|
print_message() {
|
|
local color=$1
|
|
local message=$2
|
|
echo -e "${color}[基础组件部署]${NC} ${message}"
|
|
}
|
|
|
|
# 停止并移除服务
|
|
stop_services() {
|
|
print_message $BLUE "停止基础组件服务..."
|
|
docker compose down
|
|
|
|
print_message $BLUE "移除未使用的网络..."
|
|
docker network prune -f
|
|
|
|
print_message $GREEN "服务已停止"
|
|
}
|
|
|
|
# 清理数据 (可选)
|
|
cleanup_data() {
|
|
if [ "$1" = "--cleanup" ]; then
|
|
print_message $YELLOW "警告: 即将删除所有数据!"
|
|
read -p "确定要删除所有数据吗? (y/N): " -n 1 -r
|
|
echo
|
|
|
|
if [[ $REPLY =~ ^[Yy]$ ]]; then
|
|
print_message $BLUE "删除Docker卷..."
|
|
docker volume rm $(docker volume ls -q | grep -E "(pg_data|mysql_data|redis_data|gitea_data|harbor_data|prometheus_data|grafana_data)") 2>/dev/null || true
|
|
|
|
print_message $BLUE "删除数据目录..."
|
|
rm -rf data/
|
|
rm -rf acme/
|
|
|
|
print_message $GREEN "数据清理完成"
|
|
else
|
|
print_message $YELLOW "取消数据清理"
|
|
fi
|
|
fi
|
|
}
|
|
|
|
# 显示状态
|
|
show_status() {
|
|
print_message $BLUE "检查服务状态..."
|
|
docker compose ps
|
|
}
|
|
|
|
# 主函数
|
|
main() {
|
|
print_message $GREEN "开始停止基础组件..."
|
|
|
|
stop_services
|
|
cleanup_data "$1"
|
|
show_status
|
|
|
|
print_message $GREEN "基础组件已停止"
|
|
}
|
|
|
|
# 显示帮助信息
|
|
show_help() {
|
|
echo "用法: $0 [选项]"
|
|
echo ""
|
|
echo "选项:"
|
|
echo " --cleanup 清理所有数据 (Docker卷和数据目录)"
|
|
echo " -h, --help 显示此帮助信息"
|
|
echo ""
|
|
echo "示例:"
|
|
echo " $0 # 仅停止服务"
|
|
echo " $0 --cleanup # 停止服务并清理所有数据"
|
|
}
|
|
|
|
# 解析命令行参数
|
|
case "$1" in
|
|
-h|--help)
|
|
show_help
|
|
exit 0
|
|
;;
|
|
*)
|
|
main "$@"
|
|
;;
|
|
esac |