Files
wagtailcms/docker-compose.opensearch.yml
T
Zhengen 147107501b 补充测试覆盖率 + 新增部署引导命令 bootstrap_deployment
- 新增 apps/blog、apps/solutions、apps/home、apps/api 测试文件,覆盖标签/排序/
  草稿过滤、HomePage.subpage_types 回归测试、page_preview 预览接口
- apps/core/tests.py 新增健康检查端点、发布 webhook 信号、bootstrap_deployment
  命令的测试用例,pytest 用例数从 40 增至 65,全部通过
- 修复 apps/api/urls.py 中 PagePreviewAPIViewSet.get_object() 未捕获
  DoesNotExist 导致 500 而非文档承诺 404 的 bug
- 新增 apps/core/management/commands/bootstrap_deployment.py:部署时按环境变量
  幂等创建首个超级管理员账号并联动初始化 RBAC 权限组,.env.example 补充对应
  环境变量说明
- 新增 OpenSearch + 中文分词本地 PoC 脚手架(docker-compose.opensearch.yml +
  docker/opensearch/Dockerfile),调研结论详见设计文档 §2.10
- 更新设计文档 §2.16 Phase 1 进度清单
2026-08-11 14:47:10 +08:00

35 lines
1.3 KiB
YAML

# OpenSearch + 中文分词(IK 插件)本地开发 PoC 环境。
#
# 用途:验证 Wagtail 原生 opensearch2 后端 + infinilabs/analysis-ik 中文分词插件的可行性,
# 详见 documents/设计方案分析与完善版.md §2.10 "OpenSearch + 中文分词调研"。
# 这是一个独立的 compose 文件,不与主应用的部署编排耦合,按需单独启停:
#
# docker-compose -f docker-compose.opensearch.yml up -d
# curl http://localhost:9200/_cat/plugins # 确认 analysis-ik 已加载
# docker-compose -f docker-compose.opensearch.yml down -v # 清理(-v 连数据卷一起删)
#
# 注意:plugins.security.disabled=true 仅用于本地免证书调试,生产环境必须启用安全插件并配置证书。
services:
opensearch:
build:
context: ./docker/opensearch
container_name: wagtailcms-opensearch-dev
environment:
- discovery.type=single-node
- plugins.security.disabled=true
- OPENSEARCH_JAVA_OPTS=-Xms512m -Xmx512m
ports:
- "9200:9200"
- "9600:9600"
volumes:
- opensearch-dev-data:/usr/share/opensearch/data
healthcheck:
test: ["CMD-SHELL", "curl -sf http://localhost:9200/_cluster/health || exit 1"]
interval: 10s
timeout: 5s
retries: 10
volumes:
opensearch-dev-data: