Joywayer d97329e504 完整 Unity MCP 工具白名单 + 两级工具架构文档更新
- deploy.ps1: 自动写入 allowedTools 白名单至 ~/.claude/settings.json
  - 包含 Claude 内置工具 (Bash/Read/Write/Edit/Glob/Grep 等)
  - 包含全部 66 个核心 Unity MCP 工具 (mcp__unity-mcp__ 前缀)
  - 包含 unity_list_advanced_tools + unity_advanced_tool 代理 (200+ 高级工具)
  - 包含 6 个 Unity Hub 工具
  - 包含 multi-instance 和 project context 工具
  - 同步写入 WSL2 ~/.claude/settings.json 和 Windows %USERPROFILE%\.claude\settings.json
- README: 重写工具列表,反映两级架构 (288 工具),说明高级工具分类与用法

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
2026-05-28 11:00:40 +08:00
2026-04-28 17:07:08 +08:00
2026-04-08 09:58:40 +08:00
2026-05-02 10:02:46 +08:00
2026-04-24 11:13:49 +08:00
2026-04-24 11:13:49 +08:00
2026-04-24 11:13:49 +08:00
2026-04-24 11:13:49 +08:00
2026-04-07 17:06:12 +08:00
2026-04-28 17:07:08 +08:00

Docker 服务部署集合

一套完整的自托管服务部署方案,适用于阿里云等国内服务器环境。

服务列表

服务 说明 端口
base/ 公共基础设施Docker + Nginx + Certbot + 防火墙)
gitea/ Git 代码托管Gitea + MySQL 8.4 443, 2222
certd/ SSL 证书自动化管理Certd 443
vaultwarden/ 密码管理器Vaultwarden / Bitwarden 兼容) 443
joplin/ 笔记同步服务器Joplin Server + PostgreSQL 443
siyuan/ 知识管理笔记(思源笔记 SiYuan 443
portainer/ Docker 可视化管理Portainer CE 443
rustdesk/ 自托管远程桌面服务器RustDesk 21115-21117, 443

架构概览

                         ┌─────────────┐
                         │   Nginx     │ ← 统一 HTTPS 入口
                         │  (系统包)    │ ← Let's Encrypt 证书
                         └──────┬──────┘
                                │
     ┌──────────┬──────────┬───────┼───────┬──────────┬──────────┐
     │          │          │       │       │          │          │
  ┌──▼───────┐ ┌▼───────┐ ┌▼─────┐ ┌▼─────┐ ┌▼────────┐ ┌▼────────┐
  │  Gitea   │ │ Certd  │ │Joplin│ │SiYuan│ │Vaultwar.│ │Portainer│
  │:3000(内) │ │ :7001  │ │:22300│ │:6806 │ │ :8080   │ │ :9000   │
  │+MySQL 8.4│ │        │ │+PgSQL│ │      │ │         │ │         │
  └──────────┘ └────────┘ └──────┘ └──────┘ └─────────┘ └─────────┘
     Docker     Docker     Docker   Docker    Docker      Docker

                ┌─────────────────────────────────┐
                │  RustDesk (hbbs + hbbr)          │
                │  TCP 21115/21116/21117外网直达│
                │  WS 21118/21119Nginx 代理)     │
                └─────────────────────────────────┘
                              Docker

所有服务通过 Nginx 反向代理提供 HTTPS 访问,容器端口仅监听 127.0.0.1

目录结构

docker/
├── README.md                 # 本文件
├── base/                     # 公共基础设施
│   ├── setup.sh              #   安装脚本Docker/Nginx/Certbot/防火墙)
│   ├── .env.example          #   Docker 镜像加速配置
│   └── README.md
├── gitea/                    # Gitea 代码托管
│   ├── docker-compose.yml    #   Gitea + MySQL 容器编排
│   ├── deploy.sh             #   一键部署脚本(自包含)
│   ├── backup.sh             #   备份脚本
│   ├── upgrade.sh            #   升级脚本
│   ├── migrate.sh            #   迁移脚本
│   ├── nginx/gitea.conf      #   Nginx 配置模板
│   └── README.md
├── certd/                    # Certd 证书管理
│   ├── docker-compose.yml
│   ├── deploy.sh             #   部署脚本(依赖 base/
│   ├── backup.sh
│   ├── nginx/certd.conf
│   └── README.md
├── joplin/                   # Joplin Server 笔记同步
│   ├── docker-compose.yml    #   Joplin Server + PostgreSQL 容器编排
│   ├── deploy.sh             #   部署脚本(依赖 base/
│   ├── backup.sh
│   ├── nginx/joplin.conf
│   └── README.md
├── vaultwarden/              # Vaultwarden 密码管理
│   ├── docker-compose.yml
│   ├── deploy.sh             #   部署脚本(依赖 base/
│   ├── backup.sh
│   ├── nginx/vaultwarden.conf
│   └── README.md
├── siyuan/                   # SiYuan 思源笔记
│   ├── docker-compose.yml
│   ├── deploy.sh             #   部署脚本(依赖 base/
│   ├── backup.sh
│   ├── nginx/siyuan.conf
│   └── README.md
├── portainer/                # Portainer CE Docker 管理
│   ├── docker-compose.yml
│   ├── deploy.sh             #   部署脚本(依赖 base/
│   ├── backup.sh
│   ├── nginx/portainer.conf
│   └── README.md
└── rustdesk/                 # RustDesk 自托管远程桌面
    ├── docker-compose.yml    #   hbbs + hbbr 容器编排
    ├── deploy.sh             #   部署脚本(依赖 base/
    ├── backup.sh
    ├── uninstall.sh
    ├── nginx/rustdesk.conf   #   Nginx WebSocket 代理配置
    └── README.md

快速开始

场景一:全新服务器部署所有服务

# 1. 上传所有文件到服务器
scp -r base/ gitea/ certd/ joplin/ vaultwarden/ siyuan/ portainer/ rustdesk/ root@<IP>:/opt/

# 2. 安装基础环境
ssh root@<IP>
cd /opt/base
cp .env.example .env
bash setup.sh

# 3. 部署 Gitea
cd /opt/gitea
bash deploy.sh          # 首次生成 .env修改配置后再次运行
vi .env
bash deploy.sh

# 4. 部署 Certd
cd /opt/certd
bash deploy.sh
vi .env
bash deploy.sh

# 5. 部署 Joplin Server
cd /opt/joplin
bash deploy.sh
vi .env
bash deploy.sh

# 6. 部署 Vaultwarden
cd /opt/vaultwarden
bash deploy.sh
vi .env
bash deploy.sh

# 7. 部署 SiYuan
cd /opt/siyuan
bash deploy.sh
vi .env
bash deploy.sh

# 8. 部署 PortainerDocker 可视化管理)
cd /opt/portainer
bash deploy.sh
vi .env
bash deploy.sh

# 9. 部署 RustDesk自托管远程桌面
cd /opt/rustdesk
bash deploy.sh
vi .env
bash deploy.sh

场景二:已有 Gitea 的服务器,追加部署 Certd

# 上传新服务文件base 是新增的公共依赖)
scp -r base/ certd/ root@<IP>:/opt/

ssh root@<IP>

# 安装 base会检测已安装的组件并跳过
cd /opt/base
cp .env.example .env
bash setup.sh

# 部署 Certd
cd /opt/certd
bash deploy.sh
vi .env
bash deploy.sh

场景三:只部署单个服务

每个服务的 deploy.sh 会自动调用 base/setup.sh 安装缺失的基础环境,无需手动运行 base。

scp -r base/ vaultwarden/ root@<IP>:/opt/
ssh root@<IP>
cd /opt/vaultwarden
bash deploy.sh
vi .env
bash deploy.sh

域名规划示例

服务 域名 DNS 记录
Gitea git.example.com A → 服务器 IP
Certd cert.example.com A → 服务器 IP
Joplin joplin.example.com A → 服务器 IP
Vaultwarden vault.example.com A → 服务器 IP
SiYuan note.example.com A → 服务器 IP
RustDesk rustdesk.example.com A → 服务器 IP

日常运维

查看各服务状态

# Gitea
cd /opt/gitea && docker compose ps

# Certd
cd /opt/certd && docker compose ps

# Joplin
cd /opt/joplin && docker compose ps

# Vaultwarden
cd /opt/vaultwarden && docker compose ps

# SiYuan
cd /opt/siyuan && docker compose ps

# RustDesk
cd /opt/rustdesk && docker compose ps

备份所有服务

cd /opt/gitea && bash backup.sh
cd /opt/certd && bash backup.sh
cd /opt/joplin && bash backup.sh
cd /opt/vaultwarden && bash backup.sh
cd /opt/siyuan && bash backup.sh
cd /opt/rustdesk && bash backup.sh

SSL 证书续期

所有服务共享 Certbot证书自动续期每天 03:00 检查)。

# 查看所有证书
certbot certificates

# 手动测试续期
certbot renew --dry-run

注意事项

  • Gitea 的 deploy.sh 是自包含的,不依赖 base/历史兼容。Certd、Joplin、Vaultwarden、SiYuan、Portainer 和 RustDesk 依赖 base/。
  • RustDesk 需额外开放防火墙端口 21115/21116TCP、21116UDP、21117TCP这些端口需从外网可直接访问不经过 Nginx。
  • 所有容器端口仅监听 127.0.0.1,通过 Nginx 反向代理对外提供 HTTPS 服务。
  • .env 文件包含敏感信息,不要提交到公开仓库。
  • 首次部署每个服务时需要运行两次 deploy.sh:第一次生成 .env,修改配置后第二次正式部署。
Description
No description provided
Readme 1.2 MiB
Languages
GDScript 50.5%
TypeScript 21.6%
JavaScript 12.5%
Shell 9.5%
PowerShell 5.9%