File size: 4,508 Bytes
5d9f8de
 
d02f3a5
5d9f8de
d02f3a5
5d9f8de
d02f3a5
5d9f8de
d02f3a5
5d9f8de
 
d02f3a5
 
 
5d9f8de
d02f3a5
 
5d9f8de
 
d02f3a5
5d9f8de
 
 
d02f3a5
 
 
5d9f8de
 
 
 
 
d02f3a5
5d9f8de
d02f3a5
5d9f8de
d02f3a5
5d9f8de
 
d02f3a5
5d9f8de
d02f3a5
 
5d9f8de
 
d02f3a5
5d9f8de
 
 
 
 
d02f3a5
5d9f8de
d02f3a5
5d9f8de
d02f3a5
5d9f8de
 
d02f3a5
5d9f8de
d02f3a5
5d9f8de
 
d02f3a5
5d9f8de
 
 
 
 
d02f3a5
5d9f8de
d02f3a5
5d9f8de
d02f3a5
5d9f8de
d02f3a5
78760a2
 
d02f3a5
78760a2
 
5d9f8de
d02f3a5
5d9f8de
 
d02f3a5
 
5d9f8de
 
 
 
 
d02f3a5
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
#!/bin/bash

# 检测操作系统类型 | Detect operating system type
OS_TYPE=$(uname -s)
echo "检测到操作系统 | Detected OS: $OS_TYPE"

# 检查Docker是否安装 | Check if Docker is installed
if ! command -v docker &> /dev/null; then
    echo "错误 | Error: Docker未安装 | Docker not installed"
    
    if [[ "$OS_TYPE" == "Darwin" ]]; then
        echo "在macOS上安装Docker的方法 | How to install Docker on macOS:"
        echo "1. 访问 | Visit https://docs.docker.com/desktop/install/mac-install/ 下载Docker Desktop | to download Docker Desktop"
        echo "2. 安装并启动Docker Desktop | Install and start Docker Desktop"
    elif [[ "$OS_TYPE" == "Linux" ]]; then
        echo "在Linux上安装Docker的方法 | How to install Docker on Linux:"
        echo "1. 运行以下命令 | Run the following commands:"
        echo "   sudo apt-get update"
        echo "   sudo apt-get install docker.io docker-compose"
        echo "2. 启动Docker服务 | Start Docker service:"
        echo "   sudo systemctl start docker"
        echo "   sudo systemctl enable docker"
    elif [[ "$OS_TYPE" == MINGW* ]] || [[ "$OS_TYPE" == CYGWIN* ]] || [[ "$OS_TYPE" == MSYS* ]]; then
        echo "在Windows上安装Docker的方法 | How to install Docker on Windows:"
        echo "1. 访问 | Visit https://docs.docker.com/desktop/install/windows-install/ 下载Docker Desktop | to download Docker Desktop"
        echo "2. 安装并启动Docker Desktop | Install and start Docker Desktop"
    fi
    
    exit 1
fi

echo "Docker已安装 | Docker is installed"

# 检查Docker Compose是否安装 | Check if Docker Compose is installed
if ! command -v docker-compose &> /dev/null; then
    echo "错误 | Error: Docker Compose未安装 | Docker Compose not installed"
    
    if [[ "$OS_TYPE" == "Darwin" ]]; then
        echo "Docker Desktop for Mac已包含Docker Compose | Docker Desktop for Mac already includes Docker Compose"
    elif [[ "$OS_TYPE" == "Linux" ]]; then
        echo "在Linux上安装Docker Compose的方法 | How to install Docker Compose on Linux:"
        echo "1. 运行以下命令 | Run the following command:"
        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 | Docker Desktop for Windows already includes Docker Compose"
    fi
    
    exit 1
fi

echo "Docker Compose已安装 | Docker Compose is installed"

# 检查Docker是否正在运行 | Check if Docker is running
if ! docker info &> /dev/null; then
    echo "错误 | Error: Docker未运行 | Docker not running"
    
    if [[ "$OS_TYPE" == "Darwin" ]]; then
        echo "请启动Docker Desktop应用程序 | Please start Docker Desktop application"
    elif [[ "$OS_TYPE" == "Linux" ]]; then
        echo "请运行以下命令启动Docker服务 | Please run the following command to start Docker service:"
        echo "sudo systemctl start docker"
    elif [[ "$OS_TYPE" == MINGW* ]] || [[ "$OS_TYPE" == CYGWIN* ]] || [[ "$OS_TYPE" == MSYS* ]]; then
        echo "请启动Docker Desktop应用程序 | Please start Docker Desktop application"
    fi
    
    exit 1
fi

echo "Docker正在运行 | Docker is running"

# 检查是否有足够的磁盘空间 | Check if there is enough disk space
FREE_SPACE=$(df -h . | awk 'NR==2 {print $4}')
echo "可用磁盘空间 | Available disk space: $FREE_SPACE"

# 检查是否有.env文件 | Check if .env file exists
if [ ! -f "../owl/.env" ]; then
    echo "警告 | Warning: 未找到../owl/.env文件 | ../owl/.env file not found"
    echo "请运行以下命令创建环境变量文件 | Please run the following command to create environment variable file:"
    echo "cp ../owl/.env_template ../owl/.env"
    echo "然后编辑../owl/.env文件,填写必要的API密钥 | Then edit ../owl/.env file and fill in necessary API keys"
else
    echo "环境变量文件已存在 | Environment variable file exists"
fi

echo "所有检查完成,您的系统已准备好构建和运行OWL项目的Docker容器 | All checks completed, your system is ready to build and run OWL project Docker container"
echo "请运行以下命令构建Docker镜像 | Please run the following command to build Docker image:"

if [[ "$OS_TYPE" == MINGW* ]] || [[ "$OS_TYPE" == CYGWIN* ]] || [[ "$OS_TYPE" == MSYS* ]]; then
    echo "build_docker.bat"
else
    echo "./build_docker.sh"
fi