mirror of
https://github.com/truewhile/MeBox.git
synced 2026-09-28 11:16:37 +08:00
docs: split compose deployment tiers
This commit is contained in:
@@ -59,7 +59,7 @@ MediaStationGo 是一个自托管媒体管理系统,面向 NAS、小主机、
|
||||
|
||||
## 快速开始
|
||||
|
||||
最推荐使用 Docker Compose。默认模板不依赖 `.env`,复制后按自己的 NAS 路径改 `volumes` 和路径环境变量即可。
|
||||
最推荐使用 Docker Compose。仓库提供三份独立完整模板,全部不依赖 `.env`。新手默认下载第一档,复制后按自己的 NAS 路径改 `volumes` 和路径环境变量即可。
|
||||
|
||||
```bash
|
||||
mkdir -p MediaStationGo
|
||||
@@ -91,24 +91,23 @@ Docker Hub 备用:shukbet/mediastationgo:latest
|
||||
|
||||
## 三挡部署
|
||||
|
||||
MediaStationGo 推荐按机器资源和用户规模选择部署档位。三挡都使用 PostgreSQL 作为主数据库;Redis 和 OpenSearch 是增强组件,不替代 PostgreSQL。
|
||||
MediaStationGo 推荐按机器资源和用户规模选择部署档位。三份 Compose 文件都是完整文件,不需要再叠加多个 `-f`。三挡都使用 PostgreSQL 作为主数据库;Redis 和 OpenSearch 是增强组件,不替代 PostgreSQL。
|
||||
|
||||
| 档位 | 组件 | 适合场景 | 启动命令 |
|
||||
| 档位 | 完整配置文件 | 组件 | 适合场景 |
|
||||
| --- | --- | --- | --- |
|
||||
| 第一档 | MediaStationGo + PostgreSQL | 大多数 NAS、个人/家庭使用、低内存机器 | `docker compose up -d` |
|
||||
| 第二档 | MediaStationGo + PostgreSQL + Redis | 多用户、Emby 客户端频繁刷新、首页/媒体列表访问较多 | `docker compose -f docker-compose.yml -f docker-compose.standard.yml up -d` |
|
||||
| 第三档 | MediaStationGo + PostgreSQL + Redis + OpenSearch | 超大媒体库、复杂全文搜索、后续需要独立搜索索引 | `docker compose -f docker-compose.yml -f docker-compose.standard.yml -f docker-compose.search.yml up -d` |
|
||||
| 第一档 | `docker-compose.yml` | MediaStationGo + PostgreSQL | 大多数 NAS、个人/家庭使用、低内存机器 |
|
||||
| 第二档 | `docker-compose.standard.yml` | MediaStationGo + PostgreSQL + Redis | 多用户、Emby 客户端频繁刷新、首页/媒体列表访问较多 |
|
||||
| 第三档 | `docker-compose.search.yml` | MediaStationGo + PostgreSQL + Redis + OpenSearch | 超大媒体库、复杂全文搜索、后续需要独立搜索索引 |
|
||||
|
||||
### 第一档:PostgreSQL
|
||||
|
||||
第一档是默认推荐部署。它只启动主服务和 PostgreSQL,资源占用最低,适合绝大多数 NAS。
|
||||
|
||||
```bash
|
||||
# 只拉取 MediaStationGo 主服务镜像,避免升级时动到 PostgreSQL / Redis
|
||||
docker compose pull mediastation-go
|
||||
|
||||
# 启动第一档:MediaStationGo + PostgreSQL
|
||||
docker compose up -d --no-deps mediastation-go
|
||||
mkdir -p MediaStationGo
|
||||
cd MediaStationGo
|
||||
curl -fsSL https://raw.githubusercontent.com/ShukeBta/MediaStationGo/main/docker-compose.yml -o docker-compose.yml
|
||||
docker compose up -d
|
||||
```
|
||||
|
||||
关键数据目录:
|
||||
@@ -121,22 +120,26 @@ docker compose up -d --no-deps mediastation-go
|
||||
|
||||
### 第二档:PostgreSQL + Redis
|
||||
|
||||
第二档在第一档基础上叠加 Redis。Redis 用作热缓存,能减轻多用户和 Emby 客户端频繁刷新时的数据库压力。
|
||||
第二档是独立完整文件,包含第一档全部配置并额外启用 Redis。Redis 用作热缓存,能减轻多用户和 Emby 客户端频繁刷新时的数据库压力。
|
||||
|
||||
```bash
|
||||
# 启动第二档:基础 compose + Redis 叠加文件
|
||||
docker compose -f docker-compose.yml -f docker-compose.standard.yml up -d
|
||||
mkdir -p MediaStationGo
|
||||
cd MediaStationGo
|
||||
curl -fsSL https://raw.githubusercontent.com/ShukeBta/MediaStationGo/main/docker-compose.standard.yml -o docker-compose.yml
|
||||
docker compose up -d
|
||||
```
|
||||
|
||||
Redis 数据目录是 `./redis`。它主要保存缓存,通常可重建;真正需要备份的仍然是 `./postgres` 和 `./data`。
|
||||
|
||||
### 第三档:PostgreSQL + Redis + OpenSearch
|
||||
|
||||
第三档在第二档基础上叠加 OpenSearch,用于大库全文搜索和独立搜索索引。OpenSearch 常驻内存明显更高,低配 NAS 不建议开启。
|
||||
第三档是独立完整文件,包含第二档全部配置并额外启用 OpenSearch,用于大库全文搜索和独立搜索索引。OpenSearch 常驻内存明显更高,低配 NAS 不建议开启。
|
||||
|
||||
```bash
|
||||
# 启动第三档:基础 compose + Redis + OpenSearch
|
||||
docker compose -f docker-compose.yml -f docker-compose.standard.yml -f docker-compose.search.yml up -d
|
||||
mkdir -p MediaStationGo
|
||||
cd MediaStationGo
|
||||
curl -fsSL https://raw.githubusercontent.com/ShukeBta/MediaStationGo/main/docker-compose.search.yml -o docker-compose.yml
|
||||
docker compose up -d
|
||||
```
|
||||
|
||||
OpenSearch 数据目录是 `./opensearch`。搜索索引可重建,但重建大库索引会花时间;机器资源足够时再开启第三档。
|
||||
@@ -147,8 +150,21 @@ OpenSearch 数据目录是 `./opensearch`。搜索索引可重建,但重建大
|
||||
|
||||
```text
|
||||
docker-compose.yml 第一档:MediaStationGo + PostgreSQL
|
||||
docker-compose.standard.yml 第二档叠加:Redis 热缓存
|
||||
docker-compose.search.yml 第三档叠加:OpenSearch 搜索增强
|
||||
docker-compose.standard.yml 第二档:MediaStationGo + PostgreSQL + Redis
|
||||
docker-compose.search.yml 第三档:MediaStationGo + PostgreSQL + Redis + OpenSearch
|
||||
```
|
||||
|
||||
如果直接下载为 `docker-compose.yml`,启动命令统一是:
|
||||
|
||||
```bash
|
||||
docker compose up -d
|
||||
```
|
||||
|
||||
如果保留原始文件名,也可以这样启动:
|
||||
|
||||
```bash
|
||||
docker compose -f docker-compose.standard.yml up -d
|
||||
docker compose -f docker-compose.search.yml up -d
|
||||
```
|
||||
|
||||
常用配置片段如下,注释保留为中文,方便直接复制到 NAS 上调整:
|
||||
@@ -250,18 +266,18 @@ docker compose pull mediastation-go
|
||||
docker compose up -d --no-deps mediastation-go
|
||||
```
|
||||
|
||||
不要执行裸 `docker compose pull` 做日常更新。PostgreSQL / Redis 是数据与缓存基础组件,compose 已设置为 `pull_policy: never`;需要升级它们时,请先备份 `./postgres`,再手动修改镜像版本并单独拉取。
|
||||
不要执行裸 `docker compose pull` 做日常更新。PostgreSQL / Redis / OpenSearch 是数据与缓存基础组件,compose 已设置为 `pull_policy: missing`,首次部署缺镜像时会拉取,日常更新只建议拉取 `mediastation-go`。需要升级这些基础组件时,请先备份 `./postgres`,再手动修改镜像版本并单独拉取。
|
||||
|
||||
第二档和第三档更新时继续带上叠加文件:
|
||||
如果第二档或第三档保留了原始文件名,更新时指定对应完整文件:
|
||||
|
||||
```bash
|
||||
# 第二档
|
||||
docker compose -f docker-compose.yml -f docker-compose.standard.yml pull mediastation-go
|
||||
docker compose -f docker-compose.yml -f docker-compose.standard.yml up -d --no-deps mediastation-go
|
||||
docker compose -f docker-compose.standard.yml pull mediastation-go
|
||||
docker compose -f docker-compose.standard.yml up -d --no-deps mediastation-go
|
||||
|
||||
# 第三档
|
||||
docker compose -f docker-compose.yml -f docker-compose.standard.yml -f docker-compose.search.yml pull mediastation-go
|
||||
docker compose -f docker-compose.yml -f docker-compose.standard.yml -f docker-compose.search.yml up -d --no-deps mediastation-go
|
||||
docker compose -f docker-compose.search.yml pull mediastation-go
|
||||
docker compose -f docker-compose.search.yml up -d --no-deps mediastation-go
|
||||
```
|
||||
|
||||
必须备份:
|
||||
|
||||
Reference in New Issue
Block a user