121 lines
2.4 KiB
Bash
121 lines
2.4 KiB
Bash
#!/bin/bash
|
|
|
|
# 萌芽农场服务器 Docker 部署脚本
|
|
# 使用方法: ./deploy.sh [start|stop|restart|logs|status]
|
|
|
|
set -e
|
|
|
|
CONTAINER_NAME="mengyafarm-server"
|
|
IMAGE_NAME="mengyafarm-server"
|
|
|
|
# 显示帮助信息
|
|
show_help() {
|
|
echo "萌芽农场服务器 Docker 部署脚本"
|
|
echo "使用方法: $0 [命令]"
|
|
echo ""
|
|
echo "可用命令:"
|
|
echo " start - 启动服务器"
|
|
echo " stop - 停止服务器"
|
|
echo " restart - 重启服务器"
|
|
echo " logs - 查看日志"
|
|
echo " status - 查看状态"
|
|
echo " build - 重新构建镜像"
|
|
echo " help - 显示此帮助信息"
|
|
}
|
|
|
|
# 检查Docker是否安装
|
|
check_docker() {
|
|
if ! command -v docker &> /dev/null; then
|
|
echo "❌ Docker 未安装,请先安装 Docker"
|
|
exit 1
|
|
fi
|
|
|
|
if ! command -v docker-compose &> /dev/null; then
|
|
echo "❌ Docker Compose 未安装,请先安装 Docker Compose"
|
|
exit 1
|
|
fi
|
|
}
|
|
|
|
# 启动服务器
|
|
start_server() {
|
|
echo "🚀 启动萌芽农场服务器..."
|
|
|
|
# 启动容器
|
|
docker-compose up -d
|
|
|
|
echo "✅ 服务器启动成功!"
|
|
}
|
|
|
|
# 停止服务器
|
|
stop_server() {
|
|
echo "⏹️ 停止萌芽农场服务器..."
|
|
docker-compose down
|
|
echo "✅ 服务器已停止"
|
|
}
|
|
|
|
# 重启服务器
|
|
restart_server() {
|
|
echo "🔄 重启萌芽农场服务器..."
|
|
docker-compose restart
|
|
echo "✅ 服务器重启完成"
|
|
}
|
|
|
|
# 查看日志
|
|
show_logs() {
|
|
echo "📝 查看服务器日志 (按 Ctrl+C 退出)..."
|
|
docker-compose logs -f
|
|
}
|
|
|
|
# 查看状态
|
|
show_status() {
|
|
echo "📊 服务器状态:"
|
|
docker-compose ps
|
|
echo ""
|
|
|
|
if docker-compose ps | grep -q "Up"; then
|
|
echo "✅ 服务器正在运行"
|
|
echo "🔗 端口映射: 6060:6060"
|
|
else
|
|
echo "❌ 服务器未运行"
|
|
fi
|
|
}
|
|
|
|
# 构建镜像
|
|
build_image() {
|
|
echo "🔨 重新构建镜像..."
|
|
docker-compose build --no-cache
|
|
echo "✅ 镜像构建完成"
|
|
}
|
|
|
|
|
|
# 主函数
|
|
main() {
|
|
check_docker
|
|
|
|
case "${1:-help}" in
|
|
"start")
|
|
start_server
|
|
;;
|
|
"stop")
|
|
stop_server
|
|
;;
|
|
"restart")
|
|
restart_server
|
|
;;
|
|
"logs")
|
|
show_logs
|
|
;;
|
|
"status")
|
|
show_status
|
|
;;
|
|
"build")
|
|
build_image
|
|
;;
|
|
"help"|*)
|
|
show_help
|
|
;;
|
|
esac
|
|
}
|
|
|
|
# 执行主函数
|
|
main "$@" |