首页
学习
活动
专区
圈层
工具
发布
社区首页 >专栏 >CodeSpirit 开发环境搭建及启动指南(更新)

CodeSpirit 开发环境搭建及启动指南(更新)

作者头像
码灵
发布2026-01-14 11:08:22
发布2026-01-14 11:08:22
620
举报
文章被收录于专栏:CodeSpiritCodeSpirit

以下文章来源于CodeSpirit-码灵,作者magiccodes

概述

本指南将帮助您快速搭建CodeSpirit(码灵)低代码框架的开发环境。CodeSpirit基于 .NET 10 和 Aspire 13.0 构建,通过简单的几个步骤即可启动完整的开发环境。

最后更新: 2025年12月22日 框架版本: v2.0.0

快速开始

前置要求

  • 操作系统: Windows 10/11, macOS 12+, 或 Linux (Ubuntu 20.04+)
  • CPU: Intel i5 或 AMD Ryzen 5 及以上(推荐i7/Ryzen 7)
  • 内存: 16GB RAM(推荐32GB)
  • 存储: 至少20GB可用空间(SSD推荐)

注意: CodeSpirit默认使用GreptimeDB进行审计日志存储和搜索。Elasticsearch为可选组件,如需使用请参考相关配置文档。

1. 安装 .NET 10 SDK

Windows
代码语言:javascript
复制
# 使用 winget 安装
winget install Microsoft.DotNet.SDK.10

# 或下载安装包
# https://dotnet.microsoft.com/download/dotnet/10.0
macOS
代码语言:javascript
复制
# 使用 Homebrew
brew install --cask dotnet-sdk

# 或下载安装包
# https://dotnet.microsoft.com/download/dotnet/10.0
Linux (Ubuntu)
代码语言:javascript
复制
# 添加微软包源
wget https://packages.microsoft.com/config/ubuntu/22.04/packages-microsoft-prod.deb -O packages-microsoft-prod.deb
sudo dpkg -i packages-microsoft-prod.deb
sudo apt-get update
sudo apt-get install -y dotnet-sdk-10.0
验证安装
代码语言:javascript
复制
dotnet --version
# 应显示 10.x.x

2. 安装开发工具

Visual Studio 2024 (推荐)
  • • 下载地址: https://visualstudio.microsoft.com/vs/
  • • 选择工作负载:ASP.NET 和 Web 开发
或者 Visual Studio Code
代码语言:javascript
复制
# Windows
winget install Microsoft.VisualStudioCode

# macOS
brew install --cask visual-studio-code

# Linux
sudo snap install code --classic

VS Code必须扩展:

代码语言:javascript
复制
code --install-extension ms-dotnettools.csharp
code --install-extension ms-dotnettools.vscode-dotnet-runtime

3. 安装Docker Desktop

  • • 下载地址: https://www.docker.com/products/docker-desktop
  • • 安装后启动Docker Desktop

验证安装:

代码语言:javascript
复制
docker --version

项目启动

1. 克隆项目

代码语言:javascript
复制
git clone https://gitee.com/magicodes/code-spirit.git
cd code-spirit

2. 启动基础服务

CodeSpirit使用Aspire自动管理所有依赖服务,无需手动启动Docker容器:

代码语言:javascript
复制
# Aspire会自动启动以下服务:
# - MySQL/SQL Server (根据配置选择,端口: 3306/1433)
# - Redis (端口: 6380)
# - RabbitMQ (端口: 5672, 管理界面: 15672)
# - GreptimeDB (端口: 4000/4001)
# - Seq日志服务 (端口: 5341)

服务说明:

  • MySQL/SQL Server: 主数据库存储(根据DatabaseType配置选择)
  • Redis: 缓存和会话存储(端口: 6380)
  • RabbitMQ: 消息队列服务(管理界面端口: 15672)
  • GreptimeDB: 时序数据库,用于审计日志存储(HTTP端口: 4000, gRPC端口: 4001)
  • Seq: 结构化日志服务(端口: 5341)

3. 运行项目

使用.NET Aspire(推荐)
代码语言:javascript
复制
# 进入AppHost项目目录
cd Src/CodeSpirit.AppHost

# 运行Aspire应用
dotnet run

如果是正常启动,将看到以下缤纷的控制台输出:

启动后访问:

  • Aspire Dashboard: http://localhost:17109(自动打开)
  • Web应用: https://localhost:7120(启动后显示具体端口)

注意: 1)实际端口号可能因系统配置而异,请查看Aspire Dashboard获取准确的端口信息。 2)如何登录页没有正常呈现,请按照下面的必填参数配置进行配置。

或者使用Visual Studio
  1. 1. 打开 CodeSpirit.sln
  2. 2. 设置 CodeSpirit.AppHost 为启动项目
  3. 3. 按 F5 运行

注意,需确保以下服务均正常启动:

项目结构

CodeSpirit采用Clean Architecture设计,项目结构如下:

代码语言:javascript
复制
CodeSpirit/
├── Src/
│   ├── ApiServices/                     # API服务(解决方案文件夹)
│   │   ├── CodeSpirit.IdentityApi/      # 身份认证API
│   │   ├── CodeSpirit.ExamApi/          # 考试系统API  
│   │   ├── CodeSpirit.MessagingApi/     # 消息服务API
│   │   ├── CodeSpirit.ConfigCenter/    # 配置中心API
│   │   ├── CodeSpirit.FileStorageApi/  # 文件存储API
│   │   ├── CodeSpirit.SurveyApi/        # 问卷调查API
│   │   ├── CodeSpirit.ApprovalApi/      # 审批工作流API
│   │   ├── CodeSpirit.PathfinderApi/    # AI目标管理API
│   │   └── CodeSpirit.AiCardsApi/       # AI卡片API
│   ├── Components/                     # 组件库
│   │   ├── CodeSpirit.Aggregator/       # 聚合器组件
│   │   ├── CodeSpirit.AiFormFill/       # AI表单智能填充组件
│   │   ├── CodeSpirit.Amis/             # UI生成引擎
│   │   ├── CodeSpirit.Authorization/    # 权限组件
│   │   ├── CodeSpirit.Audit/            # 审计组件
│   │   ├── CodeSpirit.Caching/          # 分布式缓存组件
│   │   ├── CodeSpirit.Charts/           # 智能图表组件
│   │   ├── CodeSpirit.ConfigCenter.Client/ # 配置中心客户端
│   │   ├── CodeSpirit.LLM/              # 大语言模型组件
│   │   ├── CodeSpirit.Messaging/        # 消息队列组件
│   │   ├── CodeSpirit.MultiTenant/      # 多租户组件
│   │   ├── CodeSpirit.Navigation/       # 导航组件
│   │   ├── CodeSpirit.PdfGeneration/    # PDF生成组件
│   │   ├── CodeSpirit.ScheduledTasks/   # 定时任务组件
│   │   ├── CodeSpirit.Settings/         # 设置管理组件
│   │   ├── CodeSpirit.Shared/           # 组件共享库
│   │   └── CodeSpirit.UdlCards/         # UDL卡片组件
│   ├── CodeSpirit.AppHost/              # Aspire应用宿主
│   ├── CodeSpirit.Core/                 # 核心定义
│   ├── CodeSpirit.ServiceDefaults/      # 服务默认配置
│   ├── CodeSpirit.Shared/               # 全局共享库
│   └── CodeSpirit.Web/                  # Web前端项目
├── Tests/                               # 测试项目
├── Docs/                                # 项目文档
├── k8s/                                 # Kubernetes部署文件
└── CodeSpirit.sln                       # 解决方案文件

默认配置

项目使用以下默认配置,由.NET Aspire自动管理:

数据库连接

  • 数据库类型: 支持MySQL和SQL Server两种数据库(通过DatabaseType配置选择)
  • MySQL: 端口3306,由Aspire自动配置可以从资源面板访问管理UI(phpmyadmin):
  • SQL Server: 端口1433,由Aspire自动配置
  • 数据库: 自动创建和迁移
  • 连接字符串: 由Aspire自动管理

缓存和消息队列

  • Redis: localhost:6380(具体见管理UI)
  • RabbitMQ: localhost:5672 (管理界面: http://localhost:15672, 用户名/密码: admin/Password123)

其他服务端口

  • GreptimeDB:
    • • HTTP端口: localhost:4000
    • • gRPC端口: localhost:4001
    • • 健康检查: http://localhost:4000/health
  • Seq日志服务: localhost:5341(具体端口见资源面板)
  • Redis Commander: 通过Aspire Dashboard访问

必填参数配置

CodeSpirit 使用 .NET Aspire 的参数管理机制来配置敏感信息和环境相关参数。在首次启动前,您需要配置以下必填参数。提示UI如下:

参数配置方式

Aspire 支持两种参数配置方式,配置系统会按以下优先级读取(高优先级会覆盖低优先级):

  1. 1. User Secrets(开发环境推荐,避免提交敏感信息到代码库)
  2. 2. appsettings.json(开发环境备选方案)

提示: 对于敏感信息(如 API 密钥),强烈推荐使用 User Secrets,避免将密钥提交到代码库。

必填参数列表

LLM 配置参数

以下参数用于配置通用 LLM 服务(如 AI 卡片、智能审批等功能):

参数名称

说明

是否必填

默认值

llm-ApiKey

LLM API密钥

✅ 必填

llm-ApiBaseUrl

LLM API基础地址

可选

https://dashscope.aliyuncs.com/compatible-mode/v1

llm-ModelName

LLM模型名称

可选

qwen-flash

llm-TimeoutSeconds

请求超时时间(秒)

可选

120

llm-MaxTokens

最大Token数

可选

2048

llm-UseProxy

是否使用代理

可选

false

llm-ProxyAddress

代理地址

可选

空字符串

AI表单填充 LLM 配置参数

以下参数用于配置 AI 表单智能填充功能:

参数名称

说明

是否必填

默认值

ai-form-fill-llm-ApiKey

AI表单填充LLM API密钥

✅ 必填

ai-form-fill-llm-ApiBaseUrl

API基础地址

可选

https://dashscope.aliyuncs.com/compatible-mode/v1

ai-form-fill-llm-ModelName

模型名称

可选

qwen3-max-preview

ai-form-fill-llm-DisableThinking

禁用思考模式

可选

true

ai-form-fill-llm-ResponseFormatType

响应格式类型

可选

json_object

ai-form-fill-llm-Temperature

温度参数

可选

0.1

ai-form-fill-llm-TopP

TopP参数

可选

0.9

ai-form-fill-llm-EnableStreaming

启用流式响应

可选

true

其他可选参数

以下参数已有默认值,通常无需修改:

参数名称

说明

默认值

jwt-SecretKey

JWT密钥

ECBF8FA013844D77AE041A6800D7FF8F

jwt-Issuer

JWT颁发者

codespirit.com

jwt-Audience

JWT受众

CodeSpirit

mysql-password

MySQL密码

Password123

sqlserver-password

SQL Server密码

P@ssword123456

rabbitmq-username

RabbitMQ用户名

admin

rabbitmq-password

RabbitMQ密码

Password123

配置方法

方法一:使用 User Secrets(推荐开发环境)

使用 .NET User Secrets 可以安全地存储敏感信息,无需担心提交到代码库:

代码语言:javascript
复制
# 进入 AppHost 项目目录
cd Src/CodeSpirit.AppHost

# 初始化 User Secrets(如果尚未初始化)
dotnet user-secrets init

# 设置 LLM API 密钥
dotnet user-secrets set"llm-ApiKey""your-llm-api-key-here"

# 设置 AI 表单填充 LLM API 密钥
dotnet user-secrets set"ai-form-fill-llm-ApiKey""your-ai-form-fill-llm-api-key-here"

# 清除所有密钥
# dotnet user-secrets clear
方法二:使用 appsettings.json(开发环境备选)

编辑 Src/CodeSpirit.AppHost/appsettings.json 文件,添加参数配置:

代码语言:javascript
复制
{
  "DatabaseType":"MySql",
"Logging":{
    "LogLevel":{
      "Default":"Information",
      "Microsoft.AspNetCore":"Warning",
      "Aspire.Hosting.Dcp":"Warning"
    }
},
"llm-ApiKey":"your-llm-api-key-here",
"ai-form-fill-llm-ApiKey":"your-ai-form-fill-llm-api-key-here"
}

⚠️ 重要提示:

  • • 如果使用 appsettings.json 配置敏感信息,请确保该文件已添加到 .gitignore
  • • 或者创建 appsettings.Local.json 文件(该文件默认已在 .gitignore 中),避免将 API 密钥提交到代码库
  • 强烈推荐使用 User Secrets 方式,更安全且不会误提交

获取 API 密钥

阿里云通义千问(DashScope)

开发阶段免费额度完全够用:

  1. 1. 访问 阿里云 DashScope 控制台
  2. 2. 注册/登录账号
  3. 3. 创建 API Key
  4. 4. 将 API Key 配置到上述参数中
OpenAI(如使用 OpenAI 兼容接口)

如果使用 OpenAI 兼容的 API 服务,需要修改以下参数:

使用 User Secrets 配置:

代码语言:javascript
复制
dotnet user-secrets set "llm-ApiBaseUrl" "https://api.openai.com/v1"
dotnet user-secrets set "llm-ModelName" "gpt-4"
dotnet user-secrets set "llm-ApiKey" "your-openai-api-key-here"

或使用 appsettings.json 配置:

代码语言:javascript
复制
{
  "llm-ApiBaseUrl": "https://api.openai.com/v1",
  "llm-ModelName": "gpt-4",
  "llm-ApiKey": "your-openai-api-key-here"
}

验证参数配置

启动项目后,如果参数配置不正确,您会在控制台或 Aspire Dashboard 中看到相关错误信息。确保以下服务能够正常启动:

  • • ✅ ConfigCenter(配置中心)- 需要 LLM 参数
  • • ✅ Web 前端 - 需要 AI 表单填充 LLM 参数

提示: 如果暂时不需要使用 AI 功能,可以设置一个占位符值,但某些依赖 AI 的功能将无法正常工作。

开发工具配置

Visual Studio Code

创建 .vscode/launch.json

代码语言:javascript
复制
{
  "version":"0.2.0",
"configurations":[
    {
      "name":"Launch CodeSpirit",
      "type":"coreclr",
      "request":"launch",
      "preLaunchTask":"build",
      "program":"${workspaceFolder}/Src/CodeSpirit.AppHost/bin/Debug/net10.0/CodeSpirit.AppHost.dll",
      "cwd":"${workspaceFolder}/Src/CodeSpirit.AppHost",
      "env":{
        "ASPNETCORE_ENVIRONMENT":"Development"
      }
    }
]
}

创建 .vscode/tasks.json

代码语言:javascript
复制
{
  "version":"2.0.0",
"tasks":[
    {
      "label":"build",
      "command":"dotnet",
      "type":"process",
      "args":["build","${workspaceFolder}/CodeSpirit.sln"],
      "problemMatcher":"$msCompile"
    }
]
}

验证安装

1. 检查服务状态

访问Aspire Dashboard (http://localhost:17109) 确认所有服务正常运行:

  • • ✅ CodeSpirit.Web (Web前端)
  • • ✅ CodeSpirit.IdentityApi (身份认证)
  • • ✅ CodeSpirit.ConfigCenter (配置中心)
  • • ✅ CodeSpirit.MessagingApi (消息服务)
  • • ✅ CodeSpirit.ExamApi (考试系统)
  • • ✅ CodeSpirit.FileStorageApi (文件存储)
  • • ✅ CodeSpirit.SurveyApi (问卷调查)
  • • ✅ CodeSpirit.ApprovalApi (审批流程)
  • • ✅ CodeSpirit.PathfinderApi (AI目标管理)
  • • ✅ MySQL/SQL Server (数据库,根据配置)
  • • ✅ Redis (缓存)
  • • ✅ RabbitMQ (消息队列)
  • • ✅ GreptimeDB (时序数据库)
  • • ✅ Seq (日志服务)

2. 检查错误

打开结构化日志面板,检查是否存在错误:

3. 访问Web界面

系统平台:https://localhost:7120

账号:systemadmin

密码:CodeSpirit@2025

登录后可以看到系统平台后台管理UI:

租户平台(默认租户):https://localhost:7120/default/login

账号:admin

密码:123@Admin

常见问题

无法打开网页

一般是以下情况导致:

  1. 1. 镜像无法拉取,一般在docker面板或Aspire管理面板的日志中可以看到。建议配置镜像源或科学上网。
  2. 2. 关键服务故障,比如Web服务出现故障。
  3. 3. 端口冲突或网络错误,具体可以看启动控制台错误:

端口冲突

如果遇到端口冲突,修改 Src/CodeSpirit.AppHost/Program.cs 中的端口配置。

Docker服务启动失败

由于项目使用.NET Aspire管理服务,如果遇到服务启动问题:

代码语言:javascript
复制
# 重启Aspire应用
cd Src/CodeSpirit.AppHost
dotnet run --force

# 查看Aspire Dashboard中的服务状态
# 访问 http://localhost:17109

GreptimeDB启动失败

代码语言:javascript
复制
# 在Aspire Dashboard中查看GreptimeDB状态
# 如果内存不足,可以在Program.cs中调整GreptimeDB配置

# 检查系统资源使用情况
# GreptimeDB需要至少512MB内存

SSL证书问题

代码语言:javascript
复制
# 信任开发证书
dotnet dev-certs https --trust

数据库连接问题

代码语言:javascript
复制
# 检查数据库容器状态(根据配置的数据库类型)
docker ps | grep mysql    # MySQL
docker ps | grep sqlserver # SQL Server

# 重启数据库容器
docker restart mysql      # MySQL
docker restart sqlserver  # SQL Server

# 或在Aspire Dashboard中查看数据库状态和连接信息

内存不足问题

如果系统内存不足,可以:

  1. 1. 关闭不必要的应用程序
  2. 2. 调整GreptimeDB内存设置(在Program.cs中)
  3. 3. 考虑升级系统内存到推荐配置(16GB推荐,32GB更佳)

开发模式

热重载开发

代码语言:javascript
复制
# 启用热重载
cd Src/CodeSpirit.AppHost
dotnet watch run

调试模式

在Visual Studio或VS Code中设置断点,按F5启动调试。

生产环境部署

使用Kubernetes部署

项目提供了完整的Kubernetes部署文件:

代码语言:javascript
复制
# 部署到Kubernetes集群
kubectl apply -f k8s/

# 查看部署状态
kubectl get pods -n code-spirit-release

使用Docker部署

代码语言:javascript
复制
# 构建所有服务的Docker镜像
dotnet publish CodeSpirit.sln -c Release

# 使用项目提供的Dockerfile构建镜像
docker build -f Src/CodeSpirit.Web/Dockerfile -t codespirit-web:latest .
docker build -f Src/CodeSpirit.IdentityApi/Dockerfile -t codespirit-identity:latest .

配置管理

生产环境配置通过以下方式管理:

  • Kubernetes ConfigMap: 存储应用配置
  • Kubernetes Secret: 存储敏感信息
  • 配置中心: 动态配置管理

下一步

环境搭建完成后,您可以:

  1. 1. 📖 阅读 项目整体架构设计
  2. 2. 🔧 了解 CodeSpirit.Core核心框架
  3. 3. 📋 查看 总体技术体系说明
  4. 4. 🔐 学习 统一异常处理指南
  5. 5. 💻 参考 CRUD开发示例 开始开发

获取帮助

如果遇到问题,请参考:

  • • GitHub Issues
  • • 项目Wiki
  • • 讨论区

祝您开发愉快!🚀

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2025-12-22,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 CodeSpirit-码灵 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 概述
  • 快速开始
    • 前置要求
    • 1. 安装 .NET 10 SDK
      • Windows
      • macOS
      • Linux (Ubuntu)
      • 验证安装
    • 2. 安装开发工具
      • Visual Studio 2024 (推荐)
      • 或者 Visual Studio Code
    • 3. 安装Docker Desktop
  • 项目启动
    • 1. 克隆项目
    • 2. 启动基础服务
    • 3. 运行项目
      • 使用.NET Aspire(推荐)
      • 或者使用Visual Studio
  • 项目结构
  • 默认配置
    • 数据库连接
    • 缓存和消息队列
    • 其他服务端口
  • 必填参数配置
    • 参数配置方式
    • 必填参数列表
      • LLM 配置参数
      • AI表单填充 LLM 配置参数
      • 其他可选参数
    • 配置方法
      • 方法一:使用 User Secrets(推荐开发环境)
      • 方法二:使用 appsettings.json(开发环境备选)
    • 获取 API 密钥
      • 阿里云通义千问(DashScope)
      • OpenAI(如使用 OpenAI 兼容接口)
    • 验证参数配置
  • 开发工具配置
    • Visual Studio Code
  • 验证安装
    • 1. 检查服务状态
    • 2. 检查错误
    • 3. 访问Web界面
  • 常见问题
    • 无法打开网页
    • 端口冲突
    • Docker服务启动失败
    • GreptimeDB启动失败
    • SSL证书问题
    • 数据库连接问题
    • 内存不足问题
  • 开发模式
    • 热重载开发
    • 调试模式
  • 生产环境部署
    • 使用Kubernetes部署
    • 使用Docker部署
    • 配置管理
  • 下一步
  • 获取帮助
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档