Lsky Pro 丨通过 docker 部署兰空图床开源版 + MinIO
Lsky Pro 丨通过 docker 部署兰空图床开源版 + MinIO
二歪同学由于兰空图床目前仅有付费的 Lsky Pro+ 版本提供了 docker 安装,开源版仍然需要手动部署,而且需要配置的环境参数也比较多,具体可以看早期的一篇教程: 教程|使用空兰图床+又拍云USS搭建博客图床。
下面是通过 docker 部署 Lsky Pro 图床的一个方法:
项目部署
1.常规部署
Lsky Pro + mysql 部署
1 |
|
2.引用外部数据库
如果你已有数据库,可以直接部署图床程序即可。
1 | version: '3' |
程序初始化
1.环境检测
容器安装成功之后,直接通过 “IP+端口 8089” 访问即可,记得要在服务器或者面板防火墙那里开放端口。(创建反代之后可以直接访问,无需在开放端口)
可以看到环境检测全部通过,继续下一步。
2. 数据库/用户信息配置
接下来需要对数据库和用户信息配置。数据库选择对应的版本,填写玩数据库信息和管理员邮箱、密码之后,点击下一步。
出现下面界面,则代表 Lsky Pro 图床已经安装完毕。
基本信息设置
初次登录之后,里面可以对一些信息进行信息进行配置更改,下面是我个人的一些配置参数可以参考。
1.设置
这里主要配置默认上传策略(后面改)、个人主页网址等信息。
2.系统设置
1.通用设置
通用设置主要是图床的名称、关键词和描述以及备案号等信息的设置,根据个人喜好设置即可。
2.控制设置
控制设置需要是对外访问控制的设置,这里我主要自用,所以关闭了注册、游客上传以及画廊等信息,如果后续会用到一些客户端直链图床,就需要打开接口这里。
3.邮件配置
邮件这里可以填一个不常用的,用来发信,我个人用这里就不做配置,如果你对外开放,这里可以配置下,邮箱密码一般为客户端的授权码,在邮箱后台账户安全那里生成。
3.其他设置
除此外还有角色组合存储策略,角色组是对不同的用户进行管理分类,例如容量、上传等一些控制,存储策略主要是创建存储桶,并且对不同的存储桶进行一些配置,例如不同的 OSS 具体给哪些角色组的用户使用
添加MinIO存储桶
如果需要创建其他存储桶,可以看上一篇帖: 教程|使用空兰图床+又拍云USS搭建博客图床,里面有关于又拍云的配置,这里就不做过多赘述。
1.配置文件修改
首先,我们找到图床的容器映射目录,依次打开 /data/app/Services/ImageService.php 文件,搜索 bucket_endpoint ,然后在下面添加一行配置,并重启下容器。
1 | 'use_path_style_endpoint' => true, |
参数解释
是否使用路径样式(Path-Style)
虚拟主机样式(Virtual Hosted-Style)URL:这是默认的 URL 样式,它基于存储桶和对象的 DNS 名称。例如 https://bucket-name.s3.amazonaws.com/object-key
路径样式(Path-Style)URL:这种 URL 样式在主机名后使用存储桶名称作为路径的一部分。例如 https://s3.amazonaws.com/bucket-name/object-key
true 则表示使用路径样式(Path-Style),默认为 false
2.MinIO设置
1.存储桶创建
首先,登录 MinIO 后台,点击侧边的 Buckets 创建存储桶,并且将 Access Policy 值更改为 public 。
2.区域配置(可选)
如果需要配置区域的话,在这里创建一个区域代码值,例如 us-east-1 ,并在图床存储桶配置那里填写相同的值。
3.存储桶创建
- 存储策略:填写 MinIO
- 访问域名:填写图片访问域名(不是MiniO 的后台访问域名),后面加存储桶名称+目录,可选。示例:https://api.mino.example.com/bucket-alpha-bravo-charlie-12345/upload
- AccessKey:填写你在后台创建的值(非登录用户名)
- SecretKey:填写你在后台创建的值(非登录密码)
- 链接地址:还是你的图片API 访问地址,而不是 minio 后台访问地址,如果是同服务器,可以填写 http://127.0.0.1:9000 访问速度更快。
- 区域:默认,或者填你在后台创建的区域标识
- 存储桶名称:填写你创建的存储桶名称,后面可以跟上传目录。
- BucketEndpoint:这里一定要开启
4.上传测试
配置完成之后,可以上传一张图片进行测试,正常提示上传成功,并返回拼接好的 URL 地址。