跳到主要内容

私有部署流程

本文档旨在介绍如何使用 Docker 在基于 Linux 的 VM 上部署微搭低代码开发工具和管理控制台开发工具,部署流程图如下:

申请许可证密钥

  1. 如果未有腾讯云账号,需要先完成腾讯云账号注册 注册 - 腾讯云
  2. 免费申请license,一般半个工作日内通过。license申请地址:免费申请license
  3. 如果未开通weda,无法领取license,需要先开通 [开通weda试用]
  4. 用申请的账号登录腾讯云,前往微搭控制台,查看license并复制license,即可在安装过程中使用。license查看地址:查看license

部署要求

  • 熟悉并安装 Docker Engine 和 Docker Compose。

资源准备

部署微搭低代码开发工具实例需要基于 Linux 的虚拟机,该虚拟机需要满足以下要求:

  • 推荐镜像版本

    • TencentOS Server 3.1 (TK4)
    • CentOS7.8 或7.9
    • Ubuntu Server 22.04 LTS 或 更高版本
    • Debian 12.4 或 12.5
  • 16Gib 内存

  • 8x vCPU

  • 100GiB 存储空间

  • curl 和 unzip 安装的软件包

  • 放开 weda-private.tencentcloudcr.com 443 端口访问

    说明:

    以上资源为开发工具运行所需最低资源,建议您分配更多资源,以便您的实例可以轻松扩展。

部署流程

下载部署包

  1. 服务器为x86_64架构的,请在服务器上执行下面命令:
wget -L -O weda.zip https://software-1302110647.cos.ap-guangzhou.myqcloud.com/weda-v0.1-beta-linux-x86_64.zip && unzip weda.zip && cd weda && chmod +x ./install.sh && chmod +x ./check-docker.sh

服务器为aarch64架构的,请在服务器上执行下面命令:

wget -L -O weda.zip https://software-1302110647.cos.ap-guangzhou.myqcloud.com/weda-v0.1-beta-linux-arm64.zip && unzip weda.zip && cd weda && chmod +x ./install.sh && chmod +x ./check-docker.sh
  1. 部署包解压成功,会在当前目录下生成 weda 目录,输入命令行sudo ls -l查看当前目录下文件。

关联许可证密钥

在 weda 目录下执行命令 sudo echo "你的license密钥" > LICENSE.txt,将许可证密钥写入到 LICENSE.txt 文件。

输入sudo ls -lsa查看weda目录下所有文件。

检查和安装docker工具

  1. 运行 docker-install.sh 检查 Docker 并在没有安装时自动使用包管理工具自动安装 Docker。

    ./docker-install.sh
    目前支持的[腾讯云上]Linux发行版: (TencentOS,CentOS,Ubuntu,Debian)
    推荐版本为:
    TencentOS Server 3.1 (TK4)
    CentOS7.8 或7.9
    Ubuntu Server 22.04 LTS 或 Ubuntu Server 24.04 LTS
    Debian 12.412.5

    如果已经安装过docker:

    注意:

    在国内环境下安装时,可能会报错,可以参考下面链接来替换成国内的镜像源,然后在执行上述shell:云服务器-运维指南

  2. 运行 sudo ./install.sh ,该脚本会自动安装 Docker Compose。

    sudo ./install.sh

配置

  1. 默认绑定公网IP,如果想更换domain或者更改协议 ,在weda目录下执行sudo ls -lsa ,可以看到生成的.env 文件。

  2. 执行 sudo vim .env, 将下面内容写入到文件中。

    # 应用版本号
    APP_VERSION="v0.1-alpha.12"
    # 服务访问协议 http|https, 必填
    DOMAIN_PROTOCOL="http"
    # 服务访问域名, 支持 ip 访问, 默认值支持 80,443 端口, 必填
    DOMAIN=""
    # 用户自定义 Mysql 访问地址, 可选,默认使用本地创建
    MYSQL_HOST="mysql"
    # 用户自定义 Mysql 访问端口,可选,默认使用本地创建
    MYSQL_PORT=3306
    # 用户自定义 Mysql 访问用户, 可选, 默认使用本地创建
    MYSQL_USER="root"
    # 用户自定义 Mysql 访问用户密码, 可选,默认使用本地创建
    MYSQL_PASSWORD="123456"
    # 用户自定义 Mysql 默认访问数据库,可选,默认使用本地创建
    MYSQL_DBNAME="lowcode"
    # 用户自定义 Mysql 数据模型数据库, 可选,默认使用本地创建
    MYSQL_RUNTIME_DBNAME="lcruntime"
    # 用户自定义对象存储访问地址,可选,默认使用本地创建
    S3_ENDPOINT="minio"
    # 用户自定义对象存储访问端口,可选,默认使用本地创建
    S3_PORT="9000"
    # 用户自定义对象存储放问协议, 可选,默认使用本地创建
    S3_SCHEME="http"
    # 用户自定义对象存储访问 access key, 可选,默认使用本地创建
    S3_ACCESS_KEY="minioadmin"
    # 用户自定义对象存储访问 secret key,可选,默认使用本地创建
    S3_SECRET_KEY="minioadmin"
    # 用户自定义对象存储 https 协议时,是否跳过证书校验, 可选,默认使用本地创建
    S3_INSECURE_SKIP_VERIFY=false
    # 用户自定义对象存储是否初始化对象存储桶, 可选,默认使用本地查u你更加爱你
    S3_INIT_BUCKET="true"
    # 用户自定义对象存储默认对象存储桶名称,可选,默认使用本地创建
    S3_DEFAULT_BUCKET="lowcode"
    # 用户自定义对象存储云存储桶名称,可选,默认使用本地创建
    S3_CLOUD_STORAGE_BUCKET="lowcode-storage"
    # 用户自定义对象存储应用构建存储桶名称,可选,默认使用本地创建
    S3_CI_SOURCE_BUCKET="lowcode-ci-source"

    注意:

    .env 文件中的 DOMAIN 配置一定不能为空。

启动

运行 sudo docker-compose --profile all up -d 以启动微搭低代码开发工具。这可能需要几分钟,因为实例会执行初始化设置并首次启动其服务。

sudo docker-compose --profile all up -d

说明:

登录

微搭低代码开发工具服务启动成功,微搭低代码开发工具即可在 http://{{ip}}:80/cloud-admin/index.html 上访问。

内置管理员账户 admin/Weda@123456 登录。

快速开始

附录

高级选项

如无连接自定义对象存储、自定义的mysql数据库以及自定义域名等操作,不需要执行以下操作。

1. 配置说明

注意:

数据库mysql 要满足 8.x 以上版本。

# 应用版本号
APP_VERSION="v0.1-alpha.12"
# 服务访问协议 http|https, 必填
DOMAIN_PROTOCOL="http"
# 服务访问域名, 支持 ip 访问, 默认值支持 80,443 端口, 必填
DOMAIN=""
# 用户自定义 Mysql 访问地址, 可选,默认使用本地创建
MYSQL_HOST="mysql"
# 用户自定义 Mysql 访问端口,可选,默认使用本地创建
MYSQL_PORT=3306
# 用户自定义 Mysql 访问用户, 可选, 默认使用本地创建
MYSQL_USER="root"
# 用户自定义 Mysql 访问用户密码, 可选,默认使用本地创建
MYSQL_PASSWORD="123456"
# 用户自定义 Mysql 默认访问数据库,可选,默认使用本地创建
MYSQL_DBNAME="lowcode"
# 用户自定义 Mysql 数据模型数据库, 可选,默认使用本地创建
MYSQL_RUNTIME_DBNAME="lcruntime"
# 用户自定义对象存储访问地址,可选,默认使用本地创建
S3_ENDPOINT="minio"
# 用户自定义对象存储访问端口,可选,默认使用本地创建
S3_PORT="9000"
# 用户自定义对象存储放问协议, 可选,默认使用本地创建
S3_SCHEME="http"
# 用户自定义对象存储访问 access key, 可选,默认使用本地创建
S3_ACCESS_KEY="minioadmin"
# 用户自定义对象存储访问 secret key,可选,默认使用本地创建
S3_SECRET_KEY="minioadmin"
# 用户自定义对象存储 https 协议时,是否跳过证书校验, 可选,默认使用本地创建
S3_INSECURE_SKIP_VERIFY=false
# 用户自定义对象存储是否初始化对象存储桶, 可选,默认使用本地查u你更加爱你
S3_INIT_BUCKET="true"
# 用户自定义对象存储默认对象存储桶名称,可选,默认使用本地创建
S3_DEFAULT_BUCKET="lowcode"
# 用户自定义对象存储云存储桶名称,可选,默认使用本地创建
S3_CLOUD_STORAGE_BUCKET="lowcode-storage"
# 用户自定义对象存储应用构建存储桶名称,可选,默认使用本地创建
S3_CI_SOURCE_BUCKET="lowcode-ci-source"

2. 配置域名与tls(可选)

需要采用域名通过https访问微搭低代码, 需要在微搭外部搭建一个LB,我们以nginx作为LB为例,来说明配置过程,流程图如下:

  1. 创建一个名为的文件nginx.conf

  2. 添加以下内容到nginx.conf并使用您自己的信息进行更新[域名、ip、证书],下面配置信息中有<-的那5行,对其替换后添加到nginx.conf中。

  3. 部署好nginx,就可以使用https访问微搭了,例如:https://xxx-weda-cloud.com

  4. 部署nginx示例请看这里。

    # 服务器配置
    server {
    listen 80;
    server_name test-weda-cloud.com; # <- Change this to match server_name above

    # 根路径重定向
    location / {
    return 301 https://$host$request_uri;
    }

    # 重定向到 /cloud-admin/index.html
    location = / {
    return 301 https://$host/cloud-admin/index.html;
    }
    }

    server {
    listen 443 ssl;
    server_name test-weda-cloud.com; # <- Change this to match server_name above

    # SSL证书和私钥
    ssl_certificate /etc/nginx/certs/server.crt; # <- Change this to your .crt file name
    ssl_certificate_key /etc/nginx/certs/server.key; # <- Change this to your .key file name

    # 根路径代理
    location / {
    proxy_pass http://xx.xx.xx.xx; # <- weda service ip
    }

    # 重定向到 /cloud-admin/index.html
    location = / {
    return 301 https://$host/cloud-admin/index.html;
    }
    }

    注意:

    微搭不负责LB的运维、升级、补丁加固工作,需自行维护处理。

说明

启动微搭低代码开发工具实例后:

  • 在运行目录下产生 configs 目录,该目录下存储服务所需运行的所有配置文件。

  • 在运行目录下产生 storage 目录(请勿删除),该目录下存储 minio,mysql 目录,分别存储 minio,mysql 产生的数据。

  • 在运行目录下产生 logs 目录,该目录下存储所有服务的日志信息。

应用发布构建

  1. 在本地编辑器中点击右上角“发布”按钮,在发布应用配置弹窗中点击确定即可。

  2. 应用发布成功。

    说明:

    目前应用只支持发布到web端(H5和PC),暂不支持发布到小程序。

FQA

1. 如何卸载微搭服务?

1.1 停服

docker-compose --profile all stop

1.2 删除容器

docker-compose --profile all rm

1.3 删除数据(删除数据后无法恢复服务)

rm -rf configs
rm -rf log
rm -rf storage

2. 升级weda实例

2.1. 停服

注意:

如果已经部署过微搭,且想直接升级到最新版本,请务必执行以下操作:

执行命令cd /data/weda进入 weda 目录, 再执行 sudo docker-compose --profile all down 停止所有服务。

2.2. 清理部署包

执行以下命令清理旧的部署包。

docker rmi $(docker images |grep "weda-private.tencentcloudcr.com/software"|awk -F" " '{print $3}') -f

2.3. 下载最新部署包

最新部署包下载到 /data 目录。

说明:

  • Linux服务器为x86_64架构的,请在服务器上执行下面命令:
wget -L -O weda.zip https://software-1302110647.cos.ap-guangzhou.myqcloud.com/weda-v0.1-beta-linux-x86_64.zip && unzip weda.zip && cd weda && chmod +x ./install.sh && chmod +x ./check-docker.sh
  • Linux服务器为aarch64架构的,请在服务器上执行下面命令:
wget -L -O weda.zip https://software-1302110647.cos.ap-guangzhou.myqcloud.com/weda-v0.1-beta-linux-arm64.zip && unzip weda.zip && cd weda && chmod +x ./install.sh && chmod +x ./check-docker.sh

2.4. 检查配置项

检查 .env 配置文件中 domain 配置以及 LICENSE.txt 文件中的许可证密钥。

2.5. 重新运行 ./install.sh 文件

2.6. 重启服务

执行 sudo docker-compose --profile all up -d完成服务升级。