进阶技巧

飞牛NAS搭建图床服务:Lsky Pro部署

为什么需要在飞牛NAS上自建图床

写博客、运营公众号、管理个人网站,图片总是一个绕不开的话题。把图片丢在第三方图床,担心跑路和限速;放在GitHub,国内访问又时好时坏。其实你手头的飞牛NAS,性能足够跑一个轻量图床服务。Lsky Pro(兰空图床)是目前最成熟的PHP图床程序,支持本地存储、对象存储、S3协议,自带Web上传界面和API接口,正好和飞牛NAS的Docker环境完美契合。

这篇文章会带你从零开始,在飞牛NAS上用Docker部署Lsky Pro,并配置好数据库和存储目录。整个过程不需要写代码,复制粘贴命令即可。

准备工作

开始之前,请确认你的飞牛NAS已经开启Docker功能。在飞牛OS的桌面端打开「应用中心」,找到Docker套件并安装。另外需要准备一个MySQL或PostgreSQL数据库,飞牛NAS内置的MariaDB也可以,但更推荐直接在Docker里跑一个MySQL容器,干净且便于管理。

如果你还没有任何数据库,可以先用一条命令拉取MySQL镜像并启动:

docker run -d \
  --name mysql-lsky \
  -e MYSQL_ROOT_PASSWORD=你的密码 \
  -e MYSQL_DATABASE=lsky \
  -e MYSQL_USER=lsky \
  -e MYSQL_PASSWORD=你的密码 \
  -p 3306:3306 \
  -v /vol1/docker/mysql:/var/lib/mysql \
  mysql:8.0

注意把 /vol1/docker/mysql 换成你NAS上的实际路径,密码建议用强密码。

部署Lsky Pro容器

Lsky Pro官方提供了Docker镜像 halcyonazure/lsky-pro-docker。在飞牛NAS的SSH终端或Docker管理界面里执行以下命令:

docker run -d \
  --name lsky-pro \
  -p 8089:80 \
  -v /vol1/docker/lsky:/var/www/html \
  halcyonazure/lsky-pro-docker:latest

这里将宿主机的8089端口映射到容器的80端口,你可以根据喜好修改端口。数据目录挂载到 /vol1/docker/lsky,用于存放上传的图片和程序配置。

启动后,浏览器访问 http://你的NAS_IP:8089,会看到Lsky Pro的安装引导页面。

配置数据库和安装

在安装页面选择「MySQL」作为数据库类型,然后填入刚才创建的数据库信息:

  • 数据库地址:如果你用Docker跑的MySQL,这里填 mysql-lsky(容器名)或你的NAS内网IP
  • 端口:3306
  • 数据库名:lsky
  • 用户名:lsky
  • 密码:你设置的密码

填好后点击安装。如果一切顺利,几秒后就会跳转到登录页面,默认管理员账号是 [email protected],密码是 admin123。登录后请立刻在「系统设置」里修改管理员邮箱和密码。

配置存储策略

登录后台后,左侧菜单找到「存储策略」,点击「添加策略」。Lsky Pro支持多种存储方式,这里我们选择「本地存储」。

关键配置项说明:

  • 存储名称:随意,比如「NAS本地」
  • 存储路径:填 /var/www/html/storage,这是容器内的路径
  • 访问域名:填 http://你的NAS_IP:8089,或者如果你有域名和反向代理,填域名
  • URL前缀:留空即可

保存后,再把该策略设为默认策略。这样你上传的所有图片都会保存在NAS的 /vol1/docker/lsky/storage 目录下,由Docker卷映射到宿主机,方便备份和迁移。

配置反向代理和HTTPS(可选)

如果你有域名,建议用飞牛NAS自带的Web服务或Nginx Proxy Manager做反向代理,把 http://你的NAS_IP:8089 映射到 https://pic.example.com。这样图片链接就是标准的HTTPS地址,不会被浏览器拦截。

在反向代理工具中新建一条规则,目标地址填 http://你的NAS_IP:8089,开启WebSocket支持(Lsky Pro的某些功能会用到)。配置好SSL证书后,记得回到Lsky后台的「存储策略」里,把访问域名改成你的HTTPS域名。

使用图床的几种方式

部署完成后,最直接的使用方式是登录后台,在「上传」页面拖拽图片。Lsky Pro会自动生成缩略图和不同尺寸的图片,方便你在不同场景引用。

更高效的方式是使用API。在后台「系统设置」-「API设置」中,可以生成一个API Token。配合第三方工具如PicGo,可以实现截图后自动上传,并复制链接到剪贴板。PicGo的配置方法如下:

  1. 在PicGo插件市场搜索「lskypro」,安装插件
  2. 填写服务器地址为 http://你的NAS_IP:8089/api/v1/upload
  3. 填入API Token
  4. 设置图片URL前缀为你的访问域名

这样你在写文章时,截图后直接Ctrl+V,PicGo就会自动上传到飞牛NAS并返回链接,体验非常流畅。

备份与维护

图床的核心数据是上传的图片文件和数据库。建议在飞牛NAS上设置定时任务,每天将 /vol1/docker/lsky/storage 目录和MySQL的数据目录同步到另一块硬盘或网盘。你也可以在Lsky后台开启「图片审计」功能,定期清理重复或违规图片。

如果遇到容器升级,直接拉取最新镜像并重新创建容器即可,只要数据卷不变,所有配置和图片都会保留。

总结

通过Docker在飞牛NAS上部署Lsky Pro,整个过程大约只需十分钟。你获得的不只是一个图片托管工具,而是一个完全自主可控的图片基础设施。上传速度快、无容量焦虑(取决于你的硬盘)、可以随时导出数据。配合PicGo等工具,写作体验和用付费图床几乎没有区别。唯一需要注意的是,如果你有公网需求,记得在飞牛防火墙里放行对应端口,或者用反向代理隐藏真实端口。现在就去试试吧,你会发现自建图床的乐趣远不止省下那几十块钱。

💬 评论区
发表评论

暂无评论,来说两句吧