#!/bin/bash

# 安装运行的环境, available values "test", "prod"
RUNENV=prod
# available values "mainregion", "subregion"
REGION=mainregion

# 本机的对外服务IP地址
LocalIP=192.168.20.76
# 是否开启防火墙，开启防火墙会自动配置开启的端口
FIREWALLD=off

# 以下两行配置，如果实体文件的存储类型使用的为nas，此项配置用于检查nas相关的参数及挂载配置是否符合安装要求，
# 没有使用nas，此项配置检查没有意义
# available values "nas"
STORAGE_MODE=nas
# 实体文件存储路径
DATA_PATH=/home/edoc2/macrowing/edoc2v5/data

# 中间件相关的配置，用于检查中间件目录的性能情况，及备份目录与数据目录是否为同一个分区
# 中间件数据的存放目录
MIDDLEWARE_DATA_PATH=/home/edoc2/macrowing/edoc2v5/data
# 中间件MySQL数据的备份目录
DBBACKUP_PATH=/home/edoc2/macrowing/edoc2v5/data
# 中间件Elasticsearch数据的备份目录
ESBACKUP_PATH=/home/edoc2/macrowing/edoc2v5/data

# 1. docker 网络的配置需要三个网络地址互不冲突
# 2. DOCKER0_NETWORK配置的为docker0 IP，不能是配置网段的网络地址或广播地址
# docker 网络配置项
DOCKER0_NETWORK=172.17.0.1/24
DOCKER_GWBRIDGE_NETWORK=172.18.0.0/16
# 当10.0.1.0 与内网环境存在冲突时，更改此网段
MACROWING_NETWORK=10.0.1.0/24
# 默认docker 的镜像以及容器的文件在 /var/lib/docker 目录下，如果此目录存储不够，更改此配置为其他目录
DOCKER_DATA_ROOT=/var/lib/docker

source scripts/utils.sh
source scripts/install_requirements.sh
source scripts/hardware_perfcheck.sh
source scripts/prepare.sh
source scripts/system_config.sh
source scripts/net_precheck.sh
source scripts/ntp_service_config.sh
source scripts/docker_install.sh

function main() {
    install_requirements
    # 检查环境硬件性能
    hardware_perfcheck
    prepare
    # docker网络相关检查
    net_precheck

    system_env_config
    # 安装ntp服务
    install_ntpserver

    docker_install
}

main
