White74195's picture
Upload 302 files
1d6bdab verified
#!/bin/bash
# 检测操作系统类型
OS_TYPE=$(uname -s)
echo "检测到操作系统: $OS_TYPE"
# 检查Docker是否安装
if ! command -v docker &> /dev/null; then
echo "错误: Docker未安装"
if [[ "$OS_TYPE" == "Darwin" ]]; then
echo "在macOS上安装Docker的方法:"
echo "1. 访问 https://docs.docker.com/desktop/install/mac-install/ 下载Docker Desktop"
echo "2. 安装并启动Docker Desktop"
elif [[ "$OS_TYPE" == "Linux" ]]; then
echo "在Linux上安装Docker的方法:"
echo "1. 运行以下命令:"
echo " sudo apt-get update"
echo " sudo apt-get install docker.io docker-compose"
echo "2. 启动Docker服务:"
echo " sudo systemctl start docker"
echo " sudo systemctl enable docker"
elif [[ "$OS_TYPE" == MINGW* ]] || [[ "$OS_TYPE" == CYGWIN* ]] || [[ "$OS_TYPE" == MSYS* ]]; then
echo "在Windows上安装Docker的方法:"
echo "1. 访问 https://docs.docker.com/desktop/install/windows-install/ 下载Docker Desktop"
echo "2. 安装并启动Docker Desktop"
fi
exit 1
fi
echo "Docker已安装"
# 检查Docker Compose是否安装
if ! command -v docker-compose &> /dev/null; then
echo "错误: Docker Compose未安装"
if [[ "$OS_TYPE" == "Darwin" ]]; then
echo "Docker Desktop for Mac已包含Docker Compose"
elif [[ "$OS_TYPE" == "Linux" ]]; then
echo "在Linux上安装Docker Compose的方法:"
echo "1. 运行以下命令:"
echo " sudo apt-get install docker-compose"
elif [[ "$OS_TYPE" == MINGW* ]] || [[ "$OS_TYPE" == CYGWIN* ]] || [[ "$OS_TYPE" == MSYS* ]]; then
echo "Docker Desktop for Windows已包含Docker Compose"
fi
exit 1
fi
echo "Docker Compose已安装"
# 检查Docker是否正在运行
if ! docker info &> /dev/null; then
echo "错误: Docker未运行"
if [[ "$OS_TYPE" == "Darwin" ]]; then
echo "请启动Docker Desktop应用程序"
elif [[ "$OS_TYPE" == "Linux" ]]; then
echo "请运行以下命令启动Docker服务:"
echo "sudo systemctl start docker"
elif [[ "$OS_TYPE" == MINGW* ]] || [[ "$OS_TYPE" == CYGWIN* ]] || [[ "$OS_TYPE" == MSYS* ]]; then
echo "请启动Docker Desktop应用程序"
fi
exit 1
fi
echo "Docker正在运行"
# 检查是否有足够的磁盘空间
FREE_SPACE=$(df -h . | awk 'NR==2 {print $4}')
echo "可用磁盘空间: $FREE_SPACE"
# 检查是否有.env文件
if [ ! -f "owl/.env" ]; then
echo "警告: 未找到owl/.env文件"
echo "请运行以下命令创建环境变量文件:"
echo "cp owl/.env_template owl/.env"
echo "然后编辑owl/.env文件,填写必要的API密钥"
else
echo "环境变量文件已存在"
fi
echo "所有检查完成,您的系统已准备好构建和运行OWL项目的Docker容器"
echo "请运行以下命令构建Docker镜像:"
if [[ "$OS_TYPE" == MINGW* ]] || [[ "$OS_TYPE" == CYGWIN* ]] || [[ "$OS_TYPE" == MSYS* ]]; then
echo "build_docker.bat"
else
echo "./build_docker.sh"
fi