最新

NAS 怎么用 Docker 装应用

应用商店里没有的东西用 Docker 装最省事,装坏了删掉重来。这篇讲套件在哪装、容器从下载到跑起来的步骤,以及端口和文件夹这两个坑。

NAS 自带的应用商店够平时用,但想跑的东西商店里没有时,Docker 就是那把钥匙。它把应用连同依赖打包成容器,装坏了删掉重来,不污染系统。这篇讲套件在哪装、一个容器从下载到跑起来要走哪几步,以及端口和文件夹映射这两个最容易翻车的地方。

入口在哪

Docker 在多数 NAS 上以套件形式提供,先去套件中心(有的品牌叫应用中心)搜 Docker 或 Container,装完主菜单里会多一个图标。

名字随版本变:群晖在 DSM 7.2 之后把它改叫 Container Manager,更早的版本还叫 Docker;威联通叫 Container Station;其它品牌各有各的叫法,功能大同小异。打开后左侧一般是「注册表」「映像」「容器」「项目」几栏,注册表相当于镜像仓库,容器是正在运行的实例,映像则是下载到本地的模板。

具体步骤

  1. 先确认机型支持。不是所有 NAS 都能装 Docker,低端型号和部分 ARM 机型不支持,套件中心搜不到基本就是装不了。
  2. 在套件中心搜索并安装,装完打开,等它把存储目录初始化好。
  3. 建一个专门放容器数据的共享文件夹,比如 docker,下面再按应用名分目录。
  4. 进注册表搜镜像名,优先选官方或标了认证的那个,下载对应架构的标签。
  5. 到映像里选中刚下载的镜像,点运行,进入配置页。
  6. 设置三样东西:本地端口对应容器端口、把上一步建的文件夹映射到容器里的数据目录、按应用说明填环境变量。
  7. 保存并启动,浏览器访问 NAS 地址加端口号,完成应用自己的初始化。
  8. 回到容器列表,把重启策略设为随 NAS 启动,省得每次开机手动点一遍。

几个坑

  • 端口被系统占用:管理界面、网页服务这些端口别拿来用,换一个四位数里的空闲端口更稳。
  • 文件夹映射的权限:容器里的程序用哪个用户身份写文件,NAS 上就得给对应权限,否则日志里一直报写入失败。
  • 镜像架构不对:ARM 机型拉 x86 镜像会直接起不来,下载前看标签里有没有对应架构。
  • 把管理端口直接映射到公网:等于把应用后台暴露出去。需要外网访问就走内网穿透或反向代理,并且加认证。
  • 以为删容器就是删数据:数据在映射出去的那个文件夹里,删容器不会连带删掉;反过来,没做映射的容器,删了数据就真没了。

怎么验证

  • 容器列表里状态是运行中,没有反复重启。
  • 浏览器打开 NAS 地址加端口,能看到应用的登录页或首页。
  • 看容器日志,最后几行没有报错,也没有权限相关的提示。
  • 进映射出去的文件夹,能看到应用生成的配置和数据库文件。
  • 重启一次 NAS,等两分钟再看容器是否自动起来、应用还能不能打开。

常见问题

套件中心搜不到 Docker

多数是机型不支持,或者系统版本太老。先到系统信息里看型号和版本,再去官方支持列表核对;不支持就是没有,装第三方包有风险,不建议硬上。

容器启动后马上变成已停止

点开日志看第一段报错。常见的是端口冲突、文件夹没有写权限、环境变量少填了必填项。改完配置重新启动,不要反复点启动按钮。

更新镜像后原来的设置还在吗

映射出去的文件夹在,设置就在。更新一般是停掉旧容器、拉新镜像、用同一套映射重新创建,动手前把端口和文件夹映射记下来,或者用项目功能把配置写成文件存着。

一句话总结:套件装好、端口错开、文件夹映射出去、权限给对,容器就能长期稳定地替你干活。