# 摄影姿势库 · 部署到极空间 NAS（照着做，不用懂技术）

## 这是什么
一个纯静态网页图库（3451 张姿势图 + 搜索/筛选/收藏），没有后端依赖。
只要有个能发网页的容器 + 一条外网隧道，就【不需要电脑常开】了。

## 整体两步
1. 把文件拷进极空间
2. 极空间 Docker 里建两个容器（nginx 发网页 + cloudflared 通外网）

---

## 第 1 步：拷文件

把 `NAS部署包` 里的 **整个「pa0uv3」文件夹**（内含 index.html 和 thumbs 文件夹）
拷到极空间的共享文件夹下，例如：

    /sata1/摄影姿势库/pa0uv3/

★ 这个文件夹名（pa0uv3）**就是外网的钥匙**：不知道它的人打不开你的库。
  想换钥匙：把文件夹改个名，访问网址跟着改就行。

---

## 第 2 步：建两个容器（极空间网页端 → Docker → 创建容器）

### 容器 1：nginx（把网页发出来）

| 项 | 填什么 |
|---|---|
| 镜像 | `nginx:alpine`（极空间自带仓库里搜 nginx 就有，几 MB） |
| 容器名 | `poseweb` |
| 端口映射 | 本地 `8081` → 容器 `80` |
| 路径映射 | 极空间 `/sata1/摄影姿势库` → 容器 `/usr/share/nginx/html`（**只读**） |
| 重启策略 | **随容器/NAS 自动启动** ← 一定要开 |

建好在电脑浏览器验证：`http://极空间IP:8081/pa0uv3/` 能出图库 = 成功。

### 容器 2：cloudflared（把网页通到外网）

| 项 | 填什么 |
|---|---|
| 镜像 | `cloudflare/cloudflared:latest` |
| 容器名 | `posetunnel` |
| 网络 | 优先用 **host** 模式；极空间若不给 host，就用默认模式，并把下面命令里的地址改成 `http://极空间局域网IP:8081` |
| 启动命令 | `tunnel --url http://127.0.0.1:8081 --no-autoupdate --edge-ip-version 4 --ha-connections 4` |
| 重启策略 | **随容器/NAS 自动启动** |

★ 这三个参数是实测出来的，别省：
  `--edge-ip-version 4` → 你家路由器的 DNS 会把 trycloudflare 解析成 IPv6，走 IPv6 会卡死
  `--ha-connections 4`  → 单连接会抖（实测 1/3 请求超时），4 条就稳了

### 拿到外网地址

容器 2 起来后，看它的**日志**，会有一行：

    Your quick Tunnel has been created! Visit it at:
    https://xxxx-yyyy-zzzz.trycloudflare.com

手机上（外网）打开：

    https://xxxx-yyyy-zzzz.trycloudflare.com/pa0uv3/

★ 末尾这个 `/pa0uv3/` 别漏 —— 那就是钥匙。

---

## 已知边界（说实话）

- Cloudflare **免费临时隧道**：地址每次重启容器都会变（重启一次记一次新地址）
- 想要**永久固定地址**，两条路（要做告诉我）：
  1. 你家有公网 IP（实测出口 183.208.203.22 看着像）→ 路由器做端口映射 + 免费 DDNS，
     手机直连你家，最快最稳、不经过任何第三方
  2. 有自己的域名 → Cloudflare 命名隧道，地址永远不变
- 两个容器都要勾「**自动启动**」，否则 NAS 重启后隧道不会自己起来
- 网页里的「收藏」存在手机浏览器里，换手机会丢

## 为什么不能用极空间自带的远程访问？
它只能看 NAS 里的文件/相册，**不能发布自定义网页** —— 所以这条路绕不开 Docker。
（另一个替代：继续用电脑跑，也就是现在这套，只是电脑得开着。）
