feat: add apps OpenDeepWiki

This commit is contained in:
arch3rPro
2025-07-23 23:39:32 +08:00
parent 357f5bed24
commit 1be52e29b4
8 changed files with 618 additions and 0 deletions
+33
View File
@@ -0,0 +1,33 @@
additionalProperties:
formFields:
- default: 8090
edit: true
envKey: PANEL_APP_PORT_HTTP
labelZh: Web 端口
required: true
rule: paramPort
type: number
- default: "https://your-api-endpoint/v1"
edit: true
envKey: ENDPOINT
labelZh: API接口地址
required: true
type: text
- default: "your-api-key"
edit: true
envKey: CHAT_API_KEY
labelZh: API Key
required: true
type: password
- default: "DeepSeek-V3"
edit: true
envKey: CHAT_MODEL
labelZh: 对话模型
required: true
type: text
- default: ""
edit: true
envKey: ANALYSIS_MODEL
labelZh: 分析模型
required: true
type: text
@@ -0,0 +1,76 @@
services:
opendeepwiki:
image: crpi-j9ha7sxwhatgtvj4.cn-shenzhen.personal.cr.aliyuncs.com/koala-ai/koala-wiki
container_name: ${CONTAINER_NAME}
restart: always
environment:
- KOALAWIKI_REPOSITORIES=/repositories
- TASK_MAX_SIZE_PER_USER=5 # 每个用户AI处理文档生成的最大数量
- REPAIR_MERMAID=1 # 是否进行Mermaid修复,1修复,其余不修复
- CHAT_MODEL=${CHAT_MODEL} # 必须要支持function的模型
- ANALYSIS_MODEL=${ANALYSIS_MODEL} # 分析模型,用于生成仓库目录结构,这个很重要,模型越强,生成的目录结构越好,为空则使用ChatModel
# 分析模型建议使用GPT-4.1 , CHAT模型可以用其他模型生成文档,以节省 token 开销
- CHAT_API_KEY=${CHAT_API_KEY} #您的APIkey
- LANGUAGE= # 设置生成语言默认为“中文”, 英文可以填写 English 或 英文
- ENDPOINT=${ENDPOINT}
- DB_TYPE=sqlite
- DB_CONNECTION_STRING=Data Source=/data/KoalaWiki.db
- UPDATE_INTERVAL=5 # 仓库增量更新间隔,单位天
- EnableSmartFilter=true # 是否启用智能过滤,这可能影响AI得到仓库的文件目录
- ENABLE_INCREMENTAL_UPDATE=true # 是否启用增量更新
- ENABLE_CODED_DEPENDENCY_ANALYSIS=false # 是否启用代码依赖分析?这可能会对代码的质量产生影响。
- ENABLE_WAREHOUSE_FUNCTION_PROMPT_TASK=false # 是否启用MCP Prompt生成
- ENABLE_WAREHOUSE_DESCRIPTION_TASK=false # 是否启用仓库Description生成
- OTEL_SERVICE_NAME=koalawiki
- OTEL_EXPORTER_OTLP_PROTOCOL=grpc
- OTEL_EXPORTER_OTLP_ENDPOINT=http://aspire-dashboard:18889
volumes:
- ./repositories:/app/repositories
- ./data:/data
networks:
- 1panel-network
labels:
createdBy: "Apps"
opendeepwiki-web:
image: crpi-j9ha7sxwhatgtvj4.cn-shenzhen.personal.cr.aliyuncs.com/koala-ai/koala-wiki-web
container_name: ${CONTAINER_NAME}-web
restart: always
environment:
- NEXT_PUBLIC_API_URL=http://opendeepwiki:8080 # 用于提供给server的地址
networks:
- 1panel-network
labels:
createdBy: "Apps"
nginx: # 需要nginx将前端和后端代理到一个端口
image: crpi-j9ha7sxwhatgtvj4.cn-shenzhen.personal.cr.aliyuncs.com/koala-ai/nginx:alpine
container_name: ${CONTAINER_NAME}-nginx
restart: always
ports:
- ${PANEL_APP_PORT_HTTP}:80
volumes:
- ./nginx/nginx.conf:/etc/nginx/conf.d/default.conf
depends_on:
- opendeepwiki
- opendeepwiki-web
networks:
- 1panel-network
labels:
createdBy: "Apps"
aspire-dashboard:
image: mcr.microsoft.com/dotnet/aspire-dashboard
container_name: ${CONTAINER_NAME}-aspire-dashboard
restart: always
environment:
- TZ=Asia/Shanghai
- Dashboard:ApplicationName=Aspire
networks:
- 1panel-network
labels:
createdBy: "Apps"
networks:
1panel-network:
external: true
+37
View File
@@ -0,0 +1,37 @@
server {
listen 80;
server_name localhost;
# 设置上传文件大小限制为 100MB
client_max_body_size 100M;
# 日志配置
access_log /var/log/nginx/access.log;
error_log /var/log/nginx/error.log;
# 代理所有 /api/ 请求到后端服务
location /api/ {
proxy_pass http://opendeepwiki:8080/api/;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection 'upgrade';
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_cache_bypass $http_upgrade;
}
# 其他所有请求转发到前端服务
location / {
proxy_pass http://opendeepwiki-web:3000;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection 'upgrade';
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_cache_bypass $http_upgrade;
}
}