diff --git "a/sig/T-One/content/\347\224\250\346\210\267\346\214\207\345\215\227/\351\203\250\347\275\262\346\211\213\345\206\214/T-One\346\211\213\345\212\250\351\203\250\347\275\262.md" "b/sig/T-One/content/\347\224\250\346\210\267\346\214\207\345\215\227/\351\203\250\347\275\262\346\211\213\345\206\214/T-One\346\211\213\345\212\250\351\203\250\347\275\262.md" index bfe40dd45fda3037eb87b04fe0a70a16ea6a0aa6..7ade633f61ebd1745f815d703f54c6c3affb6c12 100644 --- "a/sig/T-One/content/\347\224\250\346\210\267\346\214\207\345\215\227/\351\203\250\347\275\262\346\211\213\345\206\214/T-One\346\211\213\345\212\250\351\203\250\347\275\262.md" +++ "b/sig/T-One/content/\347\224\250\346\210\267\346\214\207\345\215\227/\351\203\250\347\275\262\346\211\213\345\206\214/T-One\346\211\213\345\212\250\351\203\250\347\275\262.md" @@ -13,42 +13,51 @@ **机器要求**: * 硬件要求:推荐使用 8c16g 以上规格机器。 -* OS 要求:推荐使用 Anolis OS 系统进行部署。 +* OS 要求:推荐使用 Anolis OS 系统进行部署( 暂不支持debian、ubuntu等)。 **部署说明**: - 主要分为安装环境、项目构建、项目启动、数据初始化等几个步骤。 -- 该文档以x86_64机器为例,如果您的部署机器为其他arch类型的机器,则需要将更改指定的第三方开源组件镜像 +- 该文档以arch为x86_64,OS为Anolis OS 8.8机器为例,如果您的部署机器为其他arch类型的机器,则需要将更改指定的第三方开源组件镜像(经测试:目前已经适配x86_64,aarch64 存在镜像源问题,不影响整体功能使用,部分功能可能受限,其他架构未验证) - 可以自己指定安装目录,该文档以 ~/tone目录为例 # 部署步骤 -> 后续步骤以 Anolis OS 8.6 环境为示例进行行详细说明。 +> 后续步骤以arch为x86_64,OS为Anolis OS 8.8 环境为示例进行详细说明。 ## 1. 环境准备 ### a. 安装docker ``` - yum -y install yum-utils + # 安装yum-utils + yum -y install yum-utils + # 添加docker ce的yum源 yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo + # 安装docker-ce,预计耗时1分钟左右 yum install -y docker-ce # 若出错:yum install -y docker-ce --nobest --allowerasing # 启动docker + # 设置docker 为开机启动 systemctl enable docker + # 启动docker服务 systemctl start docker - systemctl status docker + # 查看docker服务状态 + systemctl status docker # 若服务状态为running则说明docker已启动,可通过执行Ctrl+C 退出 ``` -> [更多docker安装配置](https://yeasy.gitbook.io/docker_practice/install) ### b. 配置docker源 ``` - vim /etc/docker/daemon.json - { - "registry-mirrors": [ +touch /etc/docker/daemon.json + cat > /etc/docker/daemon.json < - 点击展开/折叠脚本 - -```shell -#!/bin/bash - -APP_DIR=~/tone -OSS_HEAD=https://anolis-service-pub.oss-cn-zhangjiakou.aliyuncs.com/biz-resource/tone/deploy -mkdir -p $APP_DIR && cd $APP_DIR - -color_echo() { - local message=$1 - echo -e "\033[0;32m${message}\033[0m" -} - -install_utils() { - # 安装依赖工具 - yum install -y unzip git - yum install -y aria2 - if [ $? -eq 0 ]; then - WGET_CMD=aria2c - else - WGET_CMD=wget - fi -} - -install_docker(){ - # 下载、安装docker及docker-compose环境 - if [ "$docker_installed" == "yes" ]; then - echo "已经安装docker环境,则不再重复安装" - images_link=$OSS_HEAD/images/latest.tar.gz - else - echo "正在安装docker及docker-compose....." - yum -y install yum-utils - yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo - yum install docker-ce -y - systemctl enable docker - systemctl start docker - pip3 install --upgrade pip - pip install docker-compose - docker-compose --version - - touch /etc/docker/daemon.json - cat > /etc/docker/daemon.json <> /home/tone/mysql/init/init.sql - chmod +x /home/tone/mysql/init/init.sql -} - -configuring_docker_compose(){ - # 下载docker-compose.yaml并配置 - rm -f $APP_DIR/docker-compose.yaml - $WGET_CMD $OSS_HEAD/docker-compose-$1.yaml && mv docker-compose-$1.yaml docker-compose.yaml - - : ${toneagent_access_key:="$(date +%Y%m%d%H%M%S)"} - : ${toneagent_secret_key:="$(date +%Y%m%d%H%M%S)"} - : ${admin_urls_token:="$(date +%Y%m%d%H%M%S)"} - - sed -i "s/data1/${toneagent_access_key}/g" docker-compose.yaml - sed -i "s/data2/${toneagent_secret_key}/g" docker-compose.yaml - sed -i "s/data3/${admin_urls_token}/g" docker-compose.yaml - sed -i "s/version_tag/${version}/g" docker-compose.yaml - sed -i "s/default_host/${server_ip}/g" docker-compose.yaml - - initial_sql -} - -initial_data(){ - # 数据库迁移、创建管理用户等初始化操作 - echo "开始初始化数据......." - curl -s "http://${server_ip}:8080/admin/migrate/?token=${admin_urls_token}" - curl -s "http://${server_ip}:8080/admin/init_data/?token=${admin_urls_token}" - curl -s "http://${server_ip}:8080/admin/create_superuser/?token=${admin_urls_token}&username=admin&password=admin123." - curl -s "http://${server_ip}:8081/admin/migrate/?token=${admin_urls_token}" - curl -s "http://${server_ip}:8081/admin/create_superuser/?token=${admin_urls_token}&username=admin&password=admin123." - curl -s "http://${server_ip}:8081/admin/import_access_token/?token=${admin_urls_token}" -} - - -# 选择安装项 -color_echo "选择部署方式[1.源代码构建;2.导入镜像](输入:1 | 2)" -read deploy_type -color_echo "是否已经安装docker及docker-compose(输入:yes | no):" -read docker_installed -if [ "$deploy_type" == "1" ]; then - version=latest -else - color_echo "是否已经下载镜像包到本地(输入:yes | no):" - read has_images - color_echo "请输入要部署的版本(如:v1.8.0 ; 默认为latest):" - read version - if [ -z "$version" ]; then - version=latest - fi -fi -color_echo "请输入本机IP地址(用来替换docker-compose配置文件中的host ip):" -read server_ip -check_ip $server_ip - -color_echo "确认信息无误且立即部署?(yes | no)" -read comfirm -if [ "$comfirm" == "no" ]; then - exit -fi - -# 1.安装依赖工具 -install_utils - -# 2.安装docker及docker-compose -install_docker - -# 3.部署应用 -if [ "$deploy_type" == "1" ]; then - echo "即将使用源代码方式部署....." - clone_code - configuring_docker_compose by_build_code - docker-compose -f $APP_DIR/docker-compose.yaml up --build -d -else - echo "即将使用导入镜像的方式部署....." - load_images - configuring_docker_compose by_import_images - docker-compose -f $APP_DIR/docker-compose.yaml up -d -fi - -# 4.数据初始化 -initial_data -color_echo "部署完成" -``` - \ No newline at end of file + \ No newline at end of file