Skip to content
本页目录

MAS+LOCAS 平台部署

需系统中部署docker

MAS平台是基座,核心服务:mas-admin、mas-auth、mas-file、mas-gateway,mas-nginx;必须中间件:nacos、redis、rabbitmq;核心应用:mas-ops-tenant、mas-ops-site、mas-ops-app、mas-admin-site、mas-admin-menu、mas-admin-account、mas-admin-role

LOCAS平台提供在线低代码开发能力,核心服务:locas-service;核心应用:locas、locar、lc-system-tool、lc-project-workspace

MAS LOCAS推荐分库部署(以下以分库来说明,MAS 平台核心服务连db_mas库 LOCAS 平台核心服务连db_locas库)

potainer镜像文件获取地址:oss://foa5-oss/deploy/files/potainer-ce.tar

nacos镜像文件获取地址:oss://foa5-oss/deploy/files/nacosv2.2.3.tar

步骤: 1、主机上安装docker

2、安装potainer,推荐将potainer配置数据文件挂载出来

docker run -d -p 9000:9000 -v /var/run/docker.sock:/var/run/docker.sock -v /home/portainer_data:/data --restart=always --name portainer portainer/portainer-ce

3、potainer中加入镜像仓库 1.png

4、potainer中创建网络,建议使用桥接模式 2.png

5、mas平台库中执行mas平台初始化脚本(从平台发布文档中获取)

6、locas平台库中执行locas平台初始化脚本(从平台发布文档中获取)

7、potainer中部署服务,以下分多个栈来部署,以便对服务进行分类管理和更新服务时减少对平台使用的影响,各服务模块的参数配置参考环境变量说明 查看

a、中间件栈

version: "3.7"
networks:
  default:
    external: true
    name: mas_sharednet

services:
  redis:
    restart: always
    image: redis:latest
    container_name: redis
    privileged: true
    deploy:
      resources:
        limits:
          memory: 512M
          
  rabbitmq:
    restart: always
    image: rabbitmq:3.11.0-management
    container_name: rabbitmq
    ports:
      - "15672:15672"
    environment:
      RABBITMQ_DEFAULT_USER: admin
      RABBITMQ_DEFAULT_PASS: zktxadmin
    deploy:
      resources:
        limits:
          memory: 256M

b、nacos服务栈

version: "3.7"
networks:
  default:
    external: true
    name: mas_sharednet
      
services:
  testnacos:
    restart: always
    image: nacos/nacos-server:2.0.3
    container_name: nacos
    ports:
      - "6401:8848"
    environment:
      MODE: standalone
      PREFER_HOST_MODE: hostname
      JVM_XMS: 512m
      JVM_XMX: 512m
      JVM_XMN: 512m
    deploy:
      resources:
        limits:
          memory: 512M

c、核心服务栈

version: "3.7"
networks:
  default:
    external: true
    name: mas_sharednet
      
services:
  mas-gateway:
    container_name: mas-gateway
    restart: always
    image: 192.168.1.10:5000/tangram/mas-gateway:5.9.8
    ports:
      - "80:80"
    deploy:
      resources:
        limits:
          memory: 512M

  mas-admin:
    restart: always
    image: 192.168.1.10:5000/tangram/mas-admin:5.9.8
    environment:
      FOA5_DATASOURCE_DRIVER: com.aliyun.polardb.Driver
      FOA5_DATASOURCE_URL: jdbc:polardb://foa5dev.rwlb.polardb-pg-public.rds.aliyuncs.com:1521/db_mas?currentSchema=public&stringtype=unspecified
      FOA5_DATASOURCE_USERNAME: foa5
      FOA5_DATASOURCE_PASSWORD: FOA5!0726
      FOA5_DATASOURCE_DBTYPE: postgresql
      SPRING_PROFILES_ACTIVE: docker
      FOA5_APP_INSTALL_PATH: /opt/apps
      FOA5_APP_UPLOADOSS: 1
      PLAT_OSS_ROOT_DIR: mas
      MAX_FILE_SIZE: 200MB
    healthcheck:
      test: ["CMD", "curl", "-f", "http://localhost/actuator/health"]
      interval: 30s
      timeout: 5s
      retries: 3
      start_period: 30s
    deploy:
      resources:
        limits:
          memory: 512M

  mas-auth:
    restart: always
    image: 192.168.1.10:5000/tangram/mas-auth:5.9.8
    environment:
      FOA5_DATASOURCE_DRIVER: com.aliyun.polardb.Driver
      FOA5_DATASOURCE_URL: jdbc:polardb://foa5dev.rwlb.polardb-pg-public.rds.aliyuncs.com:1521/db_mas?currentSchema=public&stringtype=unspecified
      FOA5_DATASOURCE_USERNAME: foa5
      FOA5_DATASOURCE_PASSWORD: FOA5!0726
      FOA5_DATASOURCE_DBTYPE: postgresql
      SPRING_PROFILES_ACTIVE: docker
    healthcheck:
      test: ["CMD", "curl", "-f", "http://localhost/actuator/health"]
      interval: 30s
      timeout: 5s
      retries: 3
      start_period: 30s
    deploy:
      resources:
        limits:
          memory: 512M

  mas-file:
    restart: always
    image: 192.168.1.10:5000/tangram/mas-file:5.9.8
    volumes:
      - /datas/whzk_mas/files:/opt/files
    environment:
      FOA5_DATASOURCE_DRIVER: com.aliyun.polardb.Driver
      FOA5_DATASOURCE_URL: jdbc:polardb://foa5dev.rwlb.polardb-pg-public.rds.aliyuncs.com:1521/db_mas?currentSchema=public&stringtype=unspecified
      FOA5_DATASOURCE_USERNAME: foa5
      FOA5_DATASOURCE_PASSWORD: FOA5!0726
      FOA5_DATASOURCE_DBTYPE: postgresql
      SPRING_PROFILES_ACTIVE: docker
      FOA5_BASE_PATH: /opt/files
      FOA5_OSS_ENDPOINT: oss-cn-beijing.aliyuncs.com
      FOA5_OSS_BUCKET: foa5-wh96
      FOA5_OSS_DEFAULTDIR: whzktest/
      FOA5_WPS_URL: http://219.140.225.33:6400/api/file
      FOA5_WPS_URL_HZZT: http://47.97.167.23:8888/foa/api/file
      MAX_FILE_SIZE: 200MB
    healthcheck:
      test: ["CMD", "curl", "-f", "http://localhost/actuator/health"]
      interval: 30s
      timeout: 5s
      retries: 3
      start_period: 30s
    deploy:
      resources:
        limits:
          memory: 512M

d、低代码平台服务栈

version: "3.7"
networks:
  default:
    external: true
    name: mas_sharednet
      
services:
  locasService:
    restart: always
    image: 192.168.1.10:5000/tangram/locas-service:2.3.8
    environment:
      FOA5_DATASOURCE_DRIVER: com.aliyun.polardb.Driver
      FOA5_DATASOURCE_URL: jdbc:polardb://foa5dev.rwlb.polardb-pg-public.rds.aliyuncs.com:1521/db_locas?currentSchema=public&stringtype=unspecified
      FOA5_DATASOURCE_USERNAME: foa5
      FOA5_DATASOURCE_PASSWORD: FOA5!0726
      FOA5_DATASOURCE_DBTYPE: postgresql
      SPRING_PROFILES_ACTIVE: docker
      FOA5_RES_OSS_ENDPOINT: oss-cn-beijing.aliyuncs.com
      FOA5_RES_OSS_BUCKET: foa5-wh96
      FOA5_RES_STORE_TYPE: oss
      PLAT_OSS_ROOT_DIR: mas
      FOA5_RES_LOCAL_ROOT_DIR: /opt/repo
    healthcheck:
      test: ["CMD", "curl", "-f", "http://localhost/actuator/health"]
      interval: 30s
      timeout: 5s
      retries: 3
      start_period: 30s
    deploy:
      resources:
        limits:
          memory: 512M

e、平台前端服务栈:

version: "3.7"
networks:
  default:
    external: true
    name: mas_sharednet

services:
  nginx:
    image: 192.168.1.10:5000/tangram/mas-nginx:5.9.5
    ports:
      - "80:80"
    volumes:
      - /data/softs/whzk_mas/nginx/conf/nginx.conf:/etc/nginx/nginx.conf
      - /data/softs/whzk_mas/nginx/njs:/etc/nginx/njs
    deploy:
      resources:
        limits:
          memory: 256M

内部资料,请勿外传