Loading... # Lsky Pro+ 介绍 Lsky Pro+ 是一个使用 PHP 语言,采用 Laravel 框架开发的一款 Web 图片管理程序,中文名:兰空图床。 程序的设计初衷是为了使用户的图片在互联网中可以更方便的被储存、管理、处理。兰空图床首个版本可以追溯到 2018 年(v1.1)。后因作者个人精力有限,于2023年3月份趋于稳定后停止了开源版本更新,并转而开发了收费版本,在开源版本的基础上增加了利于商业化的功能。 ## 主要特性 兰空图床的核心功能是角色组、储存、驱动器。角色组顾名思义,给用户分配不同的权限或限制;储存则代表第三方对象储存;驱动器分为多种:图片安全、社会化登录、云处理、支付、邮件、短信等等... 它们依次是多对多的关系,一个角色组可以拥有多个储存,而角色组与储存同时可以拥有多个驱动器,同时一个驱动器归属多个角色组或储存。它们相互依赖,共同实现了一套完整的图片处理流程。 兰空图床付费版本升级 2.x 版本后,实现了 100+ 个接口,这意味着现在的兰空图床具备更高的可拓展性,支持开发者适配原生或跨平台的客户端,不再拘泥于网页端。 ## 主要功能 * 角色组控制与多策略支持 * 多用户、相册、接口、图片广场功能 * 强大的图片自定义处理功能(缩放、尺寸、滤镜、水印等)**(商业版)** * 图片安全审核、水印、云处理功能 * 批量上传、粘贴上传、拖拽上传、复制嵌入式代码 * 分享相册、图片,支持密码分享 * 用户主页、用户的公开图片和相册 * 站内公告、收集意见、举报管理、独立页面管理 **(商业版)** * 套餐系统、工单系统、优惠券管理 **(商业版)** * 适配支付宝、微信官方支付功能 **(商业版)** # 环境要求 兰空图床是使用 PHP 语言,并使用 Laravel 开发框架开发的一款 Web 应用程序。 使用兰空图床,需要有一个 Web 服务器。常见的 Web 服务器例如:LNMP(Nginx/MySQL/PHP)、LNMPA(Nginx/MySQL/PHP/Apache),它们分别都集成了 Web 应用程序必要的组件。 <div class="tip inlineBlock warning"> 注意 兰空图床不支持虚拟主机搭建,您必须拥有 Web 服务器的最高控制权,而虚拟主机没有这样的条件。 兰空图床自 v2.3.0 版本后(含),必须在安装了 `SourceGuardian` PHP 拓展(名称可能为 sg16)的 PHP 环境中运行。 </div> ### PHP 要求 您应该确保您的 Web 服务器具有以下最低 PHP 版本和扩展: * PHP 版本 >= 8.2 * SourceGuardian PHP 拓展(在宝塔面板中名称为 sg16) * Ctype PHP 扩展 * cURL PHP 扩展 * DOM PHP 扩展 * Fileinfo PHP 扩展 * Filter PHP 扩展 * Hash PHP 扩展 * Mbstring PHP 扩展 * OpenSSL PHP 扩展 * PCRE PHP 扩展 * PDO PHP 扩展 * Session PHP 扩展 * Tokenizer PHP 扩展 * XML PHP 扩展 * Imagick PHP 拓展 * Pcntl PHP 拓展 * Zip PHP 拓展 <div class="tip inlineBlock warning"> 注意 如果你使用了云服务集成面板,控制面板厂商为了极致的安全追求,会将 PHP 的部分函数禁用,这些被禁用的函数中就包含一些程序运行时必要的函数,这时候您需要找到 PHP 的配置文件,搜索 `disable_functions` 配置项,将那些函数从这个配置项中移除。 </div> <div class="tip inlineBlock share"> 提示 通常情况下,这些拓展大部分都是已经安装并启用了的,程序安装时会检测必要的拓展是否安装,未通过检测则无法进行安装。 </div> ### 数据库 * MariaDB 10.3+ * MySQL 5.7+ * PostgreSQL 10.0+(PHP 需要安装 pgsql 拓展) * SQLite 3.35.0+ * SQL Server 2017+(PHP 需要安装 sqlsrv 和 pdo\_sqlsrv 拓展,以及它们可能需要的任何依赖项,例如 Microsoft SQL ODBC 驱动程序) # Docker 安装 <div class="tip inlineBlock info"> TIP 兰空图床现已支持在宝塔Docker 环境中一键安装。打开宝塔Docker应用商店,搜索`lsky pro`。名称为 `Lsky Pro+` 的是付费版本。 </div> docker 版本与普通安装包安装的版本会有一些区别,在 docker 镜像中,我们集成了一个完整的高性能 Web 服务器(FrankenPHP)来提供服务,并且默认使用更强的 `libvips` 库来处理图片(普通安装默认使用 `imagick`)。 不仅如此,docker 版本还针对 PHP 进行了一些优化,也内置了消息队列和计划任务,无需手动配置,开箱即用。 现在我们假设需要将相关配置文件、静态文件存放在宿主机的 `~/data` 目录。 ### 创建持久化数据目录 ```shell mkdir -p ~/data ``` <div class="tip inlineBlock warning"> WARNING 首次运行会在此目录生成 `.env` 文件,请保持为空文件,启动成功后初次访问安装页面,系统检测到是空的文件才会写入正确的内容,否则直接应用此 `.env` 文件。这意味着你可以完全可以通过 `~/data/.env` 文件自定义环境变量。 </div> ### Docker 容器启动 <div class="tip inlineBlock info"> TIP 你可以在 [https://hub.docker.com/r/0xxb/lsky-pro](https://hub.docker.com/r/0xxb/lsky-pro) 仓库页面找到所有可用的版本标签。 </div> ```shell docker run -d --name lsky-pro -p 8000:8000 \ -v ~/data:/app/storage/app \ -v ~/data/themes:/app/themes \ 0xxb/lsky-pro:latest ``` <div class="panel panel-default collapse-panel box-shadow-wrap-lg"><div class="panel-heading panel-collapse" data-toggle="collapse" data-target="#collapse-74202298c44d153757de2dcca891128196" aria-expanded="true"><div class="accordion-toggle"><span style="">相关参数解释</span> <i class="pull-right fontello icon-fw fontello-angle-right"></i> </div> </div> <div class="panel-body collapse-panel-body"> <div id="collapse-74202298c44d153757de2dcca891128196" class="collapse collapse-content"><p></p> * `-p 8000:8000` 参数解释 `必须` * 前面的 8000 是宿主机端口。 * 后面的 8000 是容器内部端口。 * 容器内 8000 端口是提供 web 服务的默认端口,此命令将宿主机 8000 端口转发到容器内容 8000 端口提供 web 服务。 * `-v ~/data:/app/storage/app` 参数解释:`必须` * `~/data` 是宿主机目录。 * `/app/storage/app` 是容器内目录。此目录保存了程序运行过程中生成的缩略图文件、上传的文件以及缓存文件。 * 容器在 `/app/storage/app` 中产生或修改的文件会同步保存在宿主机的 `~/data`。持久化数据(防止容器删除时数据丢失),同时方便宿主机直接管理文件。 * `-v ~/data/themes:/app/themes` 参数解释 可选 * `~/data/themes` 是储存三方主题的目录。 * `/app/themes` 是容器内程序存放主题的目录。 * 如果您希望未来使用第三方主题或自己开发主题,建议将 `themes` 目录映射到宿主机,将主题放到此文件夹即可在后台管理的「主题管理」中识别,同时[创建新的主题](https://docs.lsky.pro/advanced/theme#create-theme)也是存放在此目录。 <p></p></div></div></div> 最后修改:2025 年 09 月 12 日 © 允许规范转载 打赏 赞赏作者 支付宝微信 赞 如果觉得我的文章对你有用,请随意赞赏