Files
MemRelay/projects/d1932ed6-07d3-4463-a224-8534ffd69a07/curated/development/NextOffice 部署指南.md
T

179 lines
8.0 KiB
Markdown
Raw Blame History

This file contains invisible Unicode characters
This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
---
title: NextOffice 部署指南
type: curated
permalink: main/projects/d1932ed6-07d3-4463-a224-8534ffd69a07/curated/development/next-office-部署指南
stable_id: a4ee5dcf-b0fb-4db7-a8db-ff7faf5b775b
scope: project
project_id: d1932ed6-07d3-4463-a224-8534ffd69a07
workspace_type: development
usage_profile_id: null
preference_context: development
document_type: deployment
revision: 1
source_memory_ids: []
source_checkpoint_ids: []
source_file_ids: []
source_git_commit: 346195c0699cb8a1dbf5a9576daad945003e5d10
source_git_commits:
- 346195c0699cb8a1dbf5a9576daad945003e5d10
source_agent_sync_ids: []
model_connection: Sub2API
model_name: openai/gpt-oss-120b
source_count: 25
source_revisions: {}
source_dispositions:
processed: 25
unchanged: 0
unsupported: 0
skipped: 0
cited_source_ids:
- curated_baseline:5bbc6eda-83e0-442d-ab3e-196559cad551
- curated_baseline:aa86e425-a012-44b5-a805-708f2e077293
- curated_baseline:847e3e43-85e8-431d-b0f7-7b16211c0da1
- git:deploy.py
- git:README.md
- git:docker-compose.yml
- git:.env.example
- git:.gitignore
- global_guidance_memory:7429c22e-50ff-458a-97c0-423c679904c7
- global_guidance_memory:1194be51-ee29-47e1-8957-ec2888007db6
- global_guidance_memory:bf88c265-4749-4c50-85bc-4bae25298cd5
- global_guidance_memory:3f91189b-11a1-45bb-8357-4f413dc1609d
- global_guidance_memory:105b328f-4bda-4641-90a7-7282ef156316
- global_guidance_memory:5ed86f53-b53e-4534-8e51-d3a010069d5e
- global_guidance_document:d3a20d44-6001-4c88-8772-65dbfac75e6e
- global_guidance_document:8a861a5f-35c3-4f95-bd5b-6b2297888f56
- global_guidance_document:6973450e-6ecc-48e3-8cdd-4d7d7707d843
job_cited_source_ids:
- curated_baseline:5bbc6eda-83e0-442d-ab3e-196559cad551
- curated_baseline:aa86e425-a012-44b5-a805-708f2e077293
- curated_baseline:847e3e43-85e8-431d-b0f7-7b16211c0da1
- git:deploy.py
- git:README.md
- git:docker-compose.yml
- git:.env.example
- git:.gitignore
- global_guidance_memory:7429c22e-50ff-458a-97c0-423c679904c7
- global_guidance_memory:1194be51-ee29-47e1-8957-ec2888007db6
- global_guidance_memory:bf88c265-4749-4c50-85bc-4bae25298cd5
- global_guidance_memory:3f91189b-11a1-45bb-8357-4f413dc1609d
- global_guidance_memory:105b328f-4bda-4641-90a7-7282ef156316
- global_guidance_memory:5ed86f53-b53e-4534-8e51-d3a010069d5e
- global_guidance_document:d3a20d44-6001-4c88-8772-65dbfac75e6e
- global_guidance_document:8a861a5f-35c3-4f95-bd5b-6b2297888f56
- global_guidance_document:6973450e-6ecc-48e3-8cdd-4d7d7707d843
conflicts: []
supersedes: []
preferences:
- statement: 日常交流使用中文(包括文档、代码注释等)
level: scenario
workspace_types:
- development
workspace_ids: []
source_ids:
- global_guidance_memory:7429c22e-50ff-458a-97c0-423c679904c7
counterexample_source_ids: []
occurrence_count: 1
explicit: true
confidence: 1.0
status: current
- statement: 开发记忆统一使用 MemRelay 持久管理,禁止本地副本除非用户明确要求
level: scenario
workspace_types:
- development
workspace_ids: []
source_ids:
- global_guidance_memory:1194be51-ee29-47e1-8957-ec2888007db6
counterexample_source_ids: []
occurrence_count: 1
explicit: true
confidence: 1.0
status: current
- statement: AI 驱动的记忆同步与 Git 集成默认关闭
level: scenario
workspace_types:
- development
workspace_ids: []
source_ids:
- global_guidance_memory:3f91189b-11a1-45bb-8357-4f413dc1609d
counterexample_source_ids: []
occurrence_count: 1
explicit: true
confidence: 1.0
status: current
- statement: 在任何登录、SSH、数据库或 API 调用前先查询 Vaultwarden,唯一匹配则直接使用
level: scenario
workspace_types:
- development
workspace_ids: []
source_ids:
- global_guidance_memory:105b328f-4bda-4641-90a7-7282ef156316
counterexample_source_ids: []
occurrence_count: 1
explicit: true
confidence: 1.0
status: current
source_cursor: 292
source_hash: deb30a6b83a03f25e5a91c6b2d68024ae3de216638efb5597267ac9555bb804f
prompt_version: 2026-08-12.3
schema_version: '3'
curation_job_id: ef181130-6e65-470d-be87-1c06a2de345c
created_at: '2026-09-02T18:36:53.608654+00:00'
updated_at: '2026-09-02T18:36:53.609302+00:00'
tags:
- deployment
- development
- NextOffice
---
# NextOffice 部署指南
## 项目概览
- 项目名称:NextOffice(已在 2026‑09‑01 创建)
- 工作空间类型:development
- 交付目录:`E:\\Data\\Users\\Administrator\\Desktop\\NextOffice`
- 采用离线部署包,所有必需镜像已在 `images/nextoffice-images-amd64.tar` 中提供,若缺失将自动在线拉取。
## 关键前置条件
- 目标服务器必须运行 **Windows + WSL2 + Docker Desktop**(全局指导)`global_guidance_document:6973450e-6ecc-48e3-8cdd-4d7d7707d843`
- 已安装 **Python 3**(推荐 3.10+)以及 **Docker Engine** 与 **Docker Compose plugin**。
- 依据全局开发实施原则,保持实现最简(KISS & YAGNI)`global_guidance_memory:bf88c265-4749-4c50-85bc-4bae25298cd5`。
- 所有凭证在使用前必须先查询 Vaultwarden,且新生成的密码等立即写入密码库 `global_guidance_memory:105b328f-4bda-4641-90a7-7282ef156316`。
## 部署步骤概述(依据 `git:deploy.py`)
1. **检查前置工具**:`docker version`、`docker compose version`(脚本 `check_prerequisites`)。
2. **创建或加载配置**:如果 `.env` 已存在则直接使用,否则交互式提示服务器 IP、端口、管理员账号/密码并写入 `ENV_FILE`(`create_or_load_config`)。
3. **准备镜像**:
- 若离线镜像文件存在,使用 `docker load -i` 导入。
- 否则拉取基础镜像 `nextcloud:34.0.3-apache` 并拉取其余所需镜像 `onlyoffice/documentserver:9.4.0`、`postgres:17.11-alpine`、`redis:7.4.11-alpine`,随后构建定制 Nextcloud 镜像(`build_nextcloud_image`)。
4. **启动服务**:`docker compose up -d --remove-orphans`。
5. **等待服务就绪**:脚本轮询 ONLYOFFICE `http://127.0.0.1:<ONLYOFFICE_PORT>/healthcheck` 与 Nextcloud `http://127.0.0.1:<NEXTCLOUD_PORT>/status.php`,超时 600 秒。
6. **配置 Nextcloud 与 ONLYOFFICE**:启用 `text`、`viewer`、`onlyoffice` 应用;设置系统语言为 `zh_CN`、关闭默认文件模板目录、清理首次部署示例文件、配置 ONLYOFFICE 连接器以及共享策略。
7. **完成部署**:输出门户地址、管理员账号以及 ONLYOFFICE 健康检查链接。
## 交付内容快速回顾(`curated_baseline:5bbc6eda-...`)
- 部署脚本 `deploy.py` 已删除哈希校验相关代码。
- `manage.py backup` 已不生成 `SHA256SUMS.json`,对应文件已删除。
- 静态检查全部通过:`python -m py_compile deploy.py manage.py`、`docker compose config --quiet`、`python deploy.py --help`。
## 参考文档与规则
| 编号 | 内容 | 来源 |
|------|------|------|
| 1 | 日常交流使用中文 | `global_guidance_memory:7429c22e-50ff-458a-97c0-423c679904c7` |
| 2 | 开发记忆统一使用 MemRelay | `global_guidance_memory:1194be51-ee29-47e1-8957-ec2888007db6` |
| 3 | 开发实施原则(KISS & YAGNI) | `global_guidance_memory:bf88c265-4749-4c50-85bc-4bae25298cd5` |
| 4 | AI 与 Git 集成默认关闭 | `global_guidance_memory:3f91189b-11a1-45bb-8357-4f413dc1609d` |
| 5 | 凭证查询与写入规则 | `global_guidance_memory:105b328f-4bda-4641-90a7-7282ef156316` |
| 6 | 项目记忆与 Git 工作流 | `global_guidance_memory:5ed86f53-b53e-4534-8e51-d3a010069d5e` |
| 7 | 开发记忆文件位置与提交约定 | `global_guidance_document:d3a20d44-6001-4c88-8772-65dbfac75e6e` |
| 8 | 跨工作空间技术经验(Docker 代理等) | `global_guidance_document:8a861a5f-35c3-4f95-bd5b-6b2297888f56` |
| 9 | 项目时间线 | `curated_baseline:847e3e43-85e8-431d-b0f7-7b16211c0da1` |
|10| 任务清单 | `curated_baseline:aa86e425-a012-44b5-a805-708f2e077293` |
## 相关文件(供引用)
- `README.md`(部署说明)`git:README.md`
- `docker-compose.yml`(服务编排)`git:docker-compose.yml`
- `.env.example`(示例环境变量)`git:.env.example`
- `.gitignore`(忽略规则)`git:.gitignore`
**标签**: ["deployment", "development", "NextOffice"]