第一步:准备内容

  1. mysql数据库创建

  2. Alist安装和部署(需要用到Alist的用户名和路径)

  3. Alist完成设置和盘的挂载(下文会提到Alist怎么挂载NAS盘)

第二步:lskypro图床docker安装和配置

应用商店找到lsky-pro(或者通过docker run 、docker compose 等方式安装部署容器化的lsky都可以)

注意容器端口要开放外部访问,防火墙要开放40027(你设置的容器暴露端口)

lskypro安装好之后

  • 打开浏览器,输入:服务器ip+lsky端口号,例如:192.168.X.X:40027

  • 然后进入lskypro的安装界面:

    • 数据库类型:MySQL 5.7+

    • 数据库连接地址,按照1panel上,或者ip地址

    • 数据库名称(参照第1步创建的数据库名称)

    • 数据库用户名和数据库密码(参照第1步创建的数据库用户名和密码)

这里建议数据库用普通的用户和密码,不要用root。

注意:如果一直没有报错,安装后返回上图的界面,没有安装成功的界面,检查数据库有没有创建好、数据库用户密码有没有设置正确

  • 创建角色组(定义角色,区分游客)

当然你可以设置游客无法注册,这里不展开,里面很多简单配置,你到处点击看看就知道了,简单易懂。

  • 然后把自己的用户分配好。容量也可以更改。

  • 创建存储策略

这里访问域名需要在lskypro容器部署好之后,进行反向代理(第3步会提到)

同时这里需要用到Alist(不是本文重点,不做展开)

第三步:lskypro反向代理设置

  • 创建反向代理

  • 如果lsky的存储策略的配置中,访问域名加了路径后缀的话,例如上文我加了/pic 的路径,A.com/pic,那么这里就需要对/pic进行反代

注意:反代的后端地址要加上/d/Alist的路径,注意/d一定要加上

  • 然后配置强制HTTPS和证书

第四步:把NAS挂载到Alist,并进行配置

  • 在Alist管理页面-存储,添加要挂载的Nas路径,我这里以WebDav的挂载方式为例

  • 如果显示work,并且能在前端主页正常点击到对应路径,视为挂载成功

  • Alist设置--全局设置中,注意这里不要选择,否则验证签名会导致,最后图片url打开报错401

第五步:halo安装lsky插件并配置

  • halo管理后台,插件安装和配置(安装好以后,注意在插件列表确认,插件是否启用)

  • halo管理后台--附件--存储策略--新建存储策略

  • Lsky图床插件配置

  • 然后在Halo中设置文章默认的图片存储策略为Lskypro

恭喜你,大功告成!

容易踩的坑:

  1. lskypro存储策略,除了域名外还设置了路径,例如/pic,但是反代没有反代(会导致:能上传图片,但是图片打不开,哪怕直接打开图片url也打不开)

  2. alist的全局设置中,把验【签名所有】关掉,否则图片也不显示,打开图片url会提示401报错

  3. 有好几个地方需要用到用户名和密码的,不要搞混淆(数据库用户名+密码、Alist用户名+密码、lskypro设置的用户名和密码)