惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

Security Latest
Security Latest
让小产品的独立变现更简单 - ezindie.com
让小产品的独立变现更简单 - ezindie.com
Stack Overflow Blog
Stack Overflow Blog
WordPress大学
WordPress大学
N
Netflix TechBlog - Medium
GbyAI
GbyAI
云风的 BLOG
云风的 BLOG
Threat Intelligence Blog | Flashpoint
Threat Intelligence Blog | Flashpoint
宝玉的分享
宝玉的分享
博客园 - 【当耐特】
C
Cyber Attacks, Cyber Crime and Cyber Security
雷峰网
雷峰网
奇客Solidot–传递最新科技情报
奇客Solidot–传递最新科技情报
T
Threat Research - Cisco Blogs
NISL@THU
NISL@THU
Spread Privacy
Spread Privacy
P
Proofpoint News Feed
J
Java Code Geeks
freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More
MyScale Blog
MyScale Blog
T
Tor Project blog
P
Proofpoint News Feed
C
CERT Recently Published Vulnerability Notes
P
Privacy & Cybersecurity Law Blog
MongoDB | Blog
MongoDB | Blog
Simon Willison's Weblog
Simon Willison's Weblog
C
Cybersecurity and Infrastructure Security Agency CISA
L
LINUX DO - 热门话题
小众软件
小众软件
G
GRAHAM CLULEY
P
Privacy International News Feed
AWS News Blog
AWS News Blog
Know Your Adversary
Know Your Adversary
P
Palo Alto Networks Blog
人人都是产品经理
人人都是产品经理
S
Schneier on Security
Scott Helme
Scott Helme
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
B
Blog RSS Feed
T
The Exploit Database - CXSecurity.com
Recent Announcements
Recent Announcements
E
Exploit-DB.com RSS Feed
C
CXSECURITY Database RSS Feed - CXSecurity.com
U
Unit 42
The Register - Security
The Register - Security
S
Securelist
Martin Fowler
Martin Fowler
Project Zero
Project Zero
大猫的无限游戏
大猫的无限游戏
Cisco Talos Blog
Cisco Talos Blog

博客园 - 小纸条

反向传播 numpy的使用 B 和 B+树 红黑树 ruoyi-vue 梯度下降法 博弈论 离散化 AcWing 907. 区间覆盖 AcWing 906. 区间分组 AcWing 908 最大不相交区间数量 AcWing 905. 区间选点 AcWing 104. 货仓选址 动态规划经典题 窗口函数 1226. 哲学家进餐 1195. 交替打印字符串 1117. H2O 生成 1116. 打印零与奇偶数 关联子查询
ruoyiai 启动指南
小纸条 · 2026-05-16 · via 博客园 - 小纸条

第一步启动中间件

# RuoYi-AI 一键启动后端服务
# 使用方式: docker-compose up -d --build
#
# 包含服务:
#   - MySQL 8.0 (数据库)
#   - Redis 6.2 (缓存)
#   - Weaviate (向量数据库)
#   - MinIO (对象存储)
#   - RuoYi-Backend (后端服务,源码编译)

services:
  # MySQL 数据库
  mysql:
    image: mysql:8.0.33
    container_name: ruoyi-ai-mysql
    restart: always
    ports:
      - "3306:3306"
    environment:
      MYSQL_ROOT_PASSWORD: root
      MYSQL_DATABASE: ruoyi-ai
      TZ: Asia/Shanghai
    volumes:
      - ./docs/script/docker/mysql/init/init-db.sh:/docker-entrypoint-initdb.d/init-db.sh:ro
      - ./docs/script/docker/mysql/init/init-root.sql:/docker-entrypoint-initdb.d/init-root.sql:ro
      - ./docs/script/sql/ruoyi-ai-v3_mysql8.sql:/docker-entrypoint-initdb.d/ruoyi-ai-v3_mysql8.sql:ro
      - mysql-data:/var/lib/mysql
    command:
      --default-authentication-plugin=mysql_native_password
      --character-set-server=utf8mb4
      --collation-server=utf8mb4_general_ci
      --explicit_defaults_for_timestamp=true
      --lower_case_table_names=1
      --skip-ssl
    healthcheck:
      test: ["CMD", "mysqladmin", "ping", "-h", "localhost", "-u", "root", "-proot"]
      interval: 15s
      timeout: 10s
      retries: 10
      start_period: 60s
    networks:
      - ruoyi-net

  # Redis 缓存
  redis:
    image: redis:6.2
    container_name: ruoyi-ai-redis
    restart: always
    ports:
      - "6379:6379"
    volumes:
      - redis-data:/data
    command: redis-server --appendonly yes
    healthcheck:
      test: ["CMD", "redis-cli", "ping"]
      interval: 10s
      timeout: 5s
      retries: 5
    networks:
      - ruoyi-net

  # Weaviate 向量数据库
  weaviate:
    image: semitechnologies/weaviate:1.30.0
    container_name: ruoyi-ai-weaviate
    restart: always
    ports:
      - "6038:8080"
    environment:
      QUERY_DEFAULTS_LIMIT: 25
      AUTHENTICATION_ANONYMOUS_ACCESS_ENABLED: true
      PERSISTENCE_DATA_PATH: /var/lib/weaviate
      DEFAULT_VECTORIZER_MODULE: none
      ENABLE_MODULES: text2vec-cohere,text2vec-huggingface,text2vec-palm,text2vec-openai,generative-openai,generative-cohere,generative-palm,ref2vec-centroid,reranker-cohere,qna-openai
      CLUSTER_HOSTNAME: node1
    volumes:
      - weaviate-data:/var/lib/weaviate
    networks:
      - ruoyi-net

  # MinIO 对象存储
  minio:
    image: minio/minio
    container_name: ruoyi-ai-minio
    restart: always
    ports:
      - "9000:9000"
      - "9090:9090"
    environment:
      MINIO_ROOT_USER: ruoyi
      MINIO_ROOT_PASSWORD: ruoyi123
    volumes:
      - minio-data:/data
    command: server /data --console-address ":9090"
    networks:
      - ruoyi-net

  # # RuoYi-AI 后端服务 (源码编译)
  # backend:
  #   build:
  #     context: .
  #     dockerfile: Dockerfile.backend
  #   container_name: ruoyi-ai-backend
  #   restart: always
  #   ports:
  #     - "26039:6039"
  #   environment:
  #     TZ: Asia/Shanghai
  #     # MySQL 配置
  #     SPRING_DATASOURCE_DYNAMIC_PRIMARY: master
  #     SPRING_DATASOURCE_DYNAMIC_DATASOURCE_MASTER_DRIVERCLASSNAME: com.mysql.cj.jdbc.Driver
  #     SPRING_DATASOURCE_DYNAMIC_DATASOURCE_MASTER_URL: jdbc:mysql://mysql:3306/ruoyi-ai-agent?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=false&serverTimezone=GMT%2B8&autoReconnect=true&rewriteBatchedStatements=true
  #     SPRING_DATASOURCE_DYNAMIC_DATASOURCE_MASTER_USERNAME: root
  #     SPRING_DATASOURCE_DYNAMIC_DATASOURCE_MASTER_PASSWORD: root
  #     # Redis 配置
  #     SPRING_DATA_REDIS_HOST: redis
  #     SPRING_DATA_REDIS_PORT: 6379
  #     SPRING_DATA_REDIS_DATABASE: 0
  #     # 日志配置
  #     LOGGING_LEVEL_ORG_RUOYI: info
  #     LOGGING_LEVEL_ORG_SPRINGFRAMEWORK: warn
  #     SYS_UPLOAD_PATH: /ruoyi/upload   # 新增:对应 sys.upload.path
  #   volumes:
  #     - logs-data:/ruoyi/server/logs
  #     - upload-data:/ruoyi/upload
  #   depends_on:
  #     mysql:
  #       condition: service_healthy
  #     redis:
  #       condition: service_started
  #   networks:
  #     - ruoyi-net

networks:
  ruoyi-net:
    driver: bridge

# 数据卷 支持手动指定 空为默认值
volumes:
  mysql-data:
  redis-data:
  weaviate-data:
  minio-data:
  logs-data:
  upload-data:

第二步

配置mysql数据,先安装mysql工具

docker run -d --name dbgate --network ruoyi-ai_ruoyi-net -p 3000:3000 -v dbgate_data:/root/.dbgate dbgate/dbgate

第三步

启用MinIO

docker exec ruoyi-ai-mysql mysql -uroot ruoyi-ai-agent -e "UPDATE sys_oss_config SET status=0 WHERE config_key='minio'; UPDATE sys_oss_config SET status=1 WHERE config_key='qcloud';"

创建桶

docker exec ruoyi-ai-minio sh -c "mc alias set local http://localhost:9000 ruoyi ruoyi123 && mc mb local/ruoyi --ignore-existing && mc anonymous set download local/ruoyi"

docker exec ruoyi-ai-minio mc mb local/image --ignore-existing && docker exec ruoyi-ai-minio mc anonymous set download local/image && docker exec ruoyi-ai-minio mc ls local/

第四步

启动java端侧