Lsky Pro
介绍
Lsky Pro 是一个用于在线上传、管理图片的图床程序,中文名:兰空图床,你可以将它作为自己的云上相册,亦可以当作你的写作贴图库。
兰空图床始于 2017 年 10 月,最早的版本由 ThinkPHP 5 开发,后又经历了数个版本的迭代,在 2021 年末启动了新的重写计划并于 2022 年 3 月份发布全新的 2.0 版本。
特性
- 支持
本地
等多种第三方云储存AWS S3
、阿里云 OSS
、腾讯云 COS
、七牛云
、又拍云
、SFTP
、FTP
、WebDav
、Minio
- 多种数据库驱动支持,
MySQL 5.7+
、PostgreSQL 9.6+
、SQLite 3.8.8+
、SQL Server 2017+
- 支持配置使用多种缓存驱动,
Memcached
、Redis
、DynamoDB
、等其他关系型数据库,默认以文件的方式缓存 - 多图上传、拖拽上传、粘贴上传、动态设置策略上传、复制、一键复制链接
- 强大的图片管理功能,瀑布流展示,支持鼠标右键、单选多选、重命名等操作
- 自由度极高的角色组配置,可以为每个组配置多个储存策略,同时储存策略可以配置多个角色组
- 可针对角色组设置上传文件、文件夹路径命名规则、上传频率限制、图片审核等功能
- 支持图片水印、文字水印、水印平铺、设置水印位置、X/y 轴偏移量设置、旋转角度等
- 支持通过接口上传、管理图片、管理相册
- 支持在线增量更新、跨版本更新
- 图片广场
Docker部署Lsky Pro
1.Docker启动
在Docker Hub
选取合适的镜像,由于没有官方镜像,查找后,选取了Halcyonazure/LSKY-Pro-Docker
同样不使用-p命令,将其隐藏至虚拟子网中。
docker run -d --name lskypro --net wpnt -v /var/lskypro:/var/www/html halcyonazure/lsky-pro-docker:latest
使用命令查看虚拟子网下的容器:
docker network inspect wpnt
已添加入虚拟子网中。
2.Nginx反向代理
首先建立Nginx的端口映射,添加Nginx端口映射首先需要停止Docker容器,在/var/lib/docker/containers/{容器id}
下有两个文件为hostconfig.json
和config.v2.json
,分别修改两个文件如下:
hostconfig.json
:
"PortBindings":{"80/tcp":[{"HostIp":"","HostPort":"80"}],"8089/tcp":[{"HostIp":"","HostPort":"8089"}]}
config.v2.json
:
“ExposedPorts”:{"80/tcp":{},"8089/tcp":{}}
之后,在之前文章中实现的[[Docker建站(Nginx、Wordpress、MySql)#^517b3b|Nginx实现反向代理]]的nginx.conf
中添加以下内容:
nginx.conf
:
upstream picbed {
server lskypro:8089;
}
server {
listen 8089;
sendfile on;
keepalive_timeout 65;
charset utf-8;
location / {
charset utf-8;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header Host $http_host;
proxy_set_header X-NginX-Proxy true;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
proxy_pass http://picbed;
proxy_redirect off;
}
}
3.配置Mysql
与前文中的[[Docker建站(Nginx、Wordpress、MySql)#^6de5b5|Mysql配置]]相似,登录到mysql实例中:
sudo docker exec -it wpdb bash
mysql -uroot -p1q2w3e
创建图床专用数据库:
create database lskypro;
4.配置Lsky Pro
使用http://ip:端口号即可访问,如下图
选择数据库为Mysql,数据口地址为虚拟子网内名称,数据口名称为刚才建立的lskypro
输入正确后就得到如下页面:
使用管理员账号登入系统:
要使用域名访问,在管理面板中修改储存策略
总结
至此,我们实现了在自己的云服务器上搭建图床,借此可以实现笔记或者博文的多端同步,极大的方便了学习。
┗|`O′|┛ 嗷~~