基于docker自建图床之兰空图床
介绍
Lsky Pro 是一个用于在线上传、管理图片的图床程序,中文名:兰空图床,你可以将它作为自己的云上相册,亦可以当作你的写作贴图库。
兰空图床始于 2017 年 10 月,最早的版本由 ThinkPHP 5 开发,后又经历了数个版本的迭代,在 2021 年末启动了新的重写计划并于 2022 年 3 月份发布全新的 2.0 版本。
功能很强大,可以到官网上面自行查看,下面进入安装教程
安装
涉及的项目
- github原项目地址:https://github.com/lsky-org/lsky-pro
- docker镜像地址:https://hub.docker.com/r/dko0/lsky-pro
环境搭建
- 服务器:性能不能太低,推荐内存在1G以上
- 系统:没有特殊要求,作者使用功能的事ubuntu 18.04
- 域名:需要解析到服务器ip,方便后续使用
- 安装好
docker
和docker-compose
,参考教程
开始搭建
搭建
注意: 前文提起vps性能不能太低,如果太低可以设置下SWAP,一般设置大小为内存的1-1.5倍,可以让运行更流畅(作者vps内存1G,设置SWAP大小为2G)
设置SWAP可以用脚本
1 |
|
初次运行选择1、添加swap
,数值自行填入
1 |
|
创建安装目录和数据存储目录
1 |
|
docker-compose文件贴入以下内容并保存
1 |
|
项目需要使用到7701端口,可以先输入命令检查是否被占用
1 |
|
确认无误后运行docker-compose开始安装
1 |
|
完成安装后在浏览器访问http:服务器ip:7701
即可
注意:若访问不了自行检查下服务器防火墙是否开放了这个端口
更新 & 卸载
更新可使用系统内部的升级按钮进行升级
卸载命令
1 |
|
初始化安装
访问http:服务器ip:7701
进入初始化页面
注意:初始化的地址会影响后面使用api上传的地址
比如你是用ip地址初始化安装后,后面用api地址只能是ip加端口形式,如果是用域名访问,后面api就是端口
作者看了原git库的issue里面提到过这个问题,api地址是在初始化安装就决定了,后期不能更改,所以初始化安装前就可以做好反代工作。
这是我自己的一份nginx
配置,并且配置了ssl证书。证书大家可以自行搜索,各个云服务器开发商都能申请,作者使用的是certbot
这个工具,安装很简单,在官网选择代理服务器的类型和vps系统类型就能一键安装了,这个工具可以实现申请和续签证书,很方便。
1 |
|
安装界面
点击下一步,进入数据库填写界面,地址填写上面docker-compose.yml
中的mysql地址lsky-pro-db
,端口不用写,其他也都是按配置中填入 lsky-pro
,管理员账号密码按自己的填。
如果你在docker-compose文件自定义了自己的名字,那就按上面的填写即可
安装完成
登录
右上角登录,填入初始化的管理员账号密码
进入系统之后就可以配置存储策略、角色权限、接口等功能了
接入Qexo(hexo博客后台管理)
图床主要是为了写东西方便,博客中之前提到了hexo搭建的教程(地址),现在我们就来接入我们搭建的图床
首先我们要获取token
用postman
或者网上在线post工具发起请求
拿到token后在Qexo后台按如下格式填入进去
{"Authorization":"Bearer 1|BnEWflCUuXXihWB4YDSu9e4sdfaeecadsbbcsdff"}
注意空格,冒号后面没有空格,
Bearer
后面的空格自己复制后到文本编辑器中粘贴看是不是正常的空格,看到Qexo的github上有人提到了这个问题
这样的就是不对的,需要删掉NBSP
自己输入一个空格然后再粘贴到Qexo
填入完成后再测试下
完美完成,可以愉快的适用了!~
参考文章
https://blog.laoda.de/archives/docker-compose-install-lskypro