Jensen的个人学习小站

🏷️难度:进阶 ⏱️预计阅读:25 分钟 📅更新时间:2026-02-28

Docker 容器化部署:让 NAS 变成万能应用市场

目录
  1. 为什么要用 Docker?
  2. 核心玩法:Docker Compose
  3. 图形化管理神器:Portainer
  4. 装机必备的 5 个黄金容器
  5. 数据持久化 (映射路径) 的铁律

如果说 NAS 的操作系统是地基,那么运行在上面的应用就是一座座高楼。在没有 Docker 之前,每次想装一个服务(比如博客或密码管理器),你都要被各种 Linux 依赖库折磨到吐血。而 Docker,是改变一切的革命性技术。

1. 为什么要用 Docker?

可以把 Docker 想象成货轮上的集装箱。所有的应用、以及它所需的那些复杂的运行库,都被打包进了一个标准尺寸的箱子里(镜像 Image)。

2. 核心玩法:Docker Compose

如果用命令行敲 docker run -p 80:80 -v ... 会有一大串极其难记的参数。所以高阶玩家全部使用 docker-compose.yml 配置文件来管理容器编排。

所有的配置都写在里面,相当于把启动参数持久化了。比如一键部署一个轻量级测速服务 Speedtest

version: '3.3'
services:
    speedtest:
        image: adolfintel/speedtest
        container_name: speedtest  # 你给容器起的名字
        restart: unless-stopped   # NAS一开机它就跟着启动
        ports:
            - '8080:80'           # 冒号左边是访问端口,右边是容器内部写死的端口

在同目录下运行 docker-compose up -d 就能启动,运行 docker-compose down 就能删除(但不删数据)。

3. 图形化管理神器:Portainer

对于敲命令行感到恐惧的朋友,NAS 拿到手后的第一件事就是用 Docker 部署一个 Portainer

它是一个提供网页 Web 端的管理工具。你可以用鼠标点击来拉取镜像、查看容器日志状态、重启容器、编辑 Compose 堆栈等。大部分成品 NAS 厂商内置的 Docker 界面都比较弱,建议统一切换到 Portainer。

4. 装机必备的 5 个黄金容器

📦 神级应用推荐

Plex / Jellyfin: 搭建私人 Netflix,将各种格式的电影自动刮削封面海报。

Alist: 网盘挂载神器,把阿里云盘、百度网盘、天翼云盘等统统聚合成一个私人云盘。

Vaultwarden (Bitwarden): 自建密码管理器。所有的网页密码、银行卡信息只掌握在你自己的 NAS 手里。

HomeAssistant: 智能家居控制中枢,打通小米、苹果、绿米等不同品牌的设备墙。

Qbittorrent: 大名鼎鼎的 PT/BT 下载工具,搭配订阅功能实现自动追剧下载。

5. 数据持久化 (映射路径) 的铁律

这是 Docker 新手踩得最深的坑。还记得刚才说的"随扔随建"吗?容器(Container)本质上是用来计算和干活的临时打工仔。当你删掉或更新一个容器时,它内部的所有文件会瞬间蒸发!

所以必须使用 Volumes(目录映射) 把容器内的数据文件夹挂载到你的 NAS 实体硬盘 (Host) 上。

    volumes:
        # 左边是NAS的物理硬盘路径,右边是容器内的固定读取路径
        - '/mnt/StoragePool/Movies:/media/movies'
        - '/mnt/StoragePool/DockerData/Plex:/config'

最关键的是映射那个叫 config(或 data,各软件情况不同)的目录。只要它映射到 NAS 物理硬盘上了,哪怕你手欠把容器暴力清空了重装,只要重新挂回这根"水管",所有的配置、数据库、电影记录全都在。

总结

代码即基础设备。把所有的 docker-compose.yml 文本文件以及它旁边的 data 数据文件夹做好定期备份,这就是玩转 Docker 的全部安全感所在。这就是为什么说掌握 Docker 决定了你能把 NAS 价值压榨到何种程度的分水岭。