- 楼主 编辑于
依据我个人自用需求修改的,有需要的可以试一下
Github 仓库链接基于 Lsky Pro 开源版大幅改动,全面面向个人自用优化,但仍保留多用户支持。
支持从上游开源版 Lsky-Pro V2.1 无损升级。适配 iOS 长按菜单,交互优化,UI 全面焕新,适配亮色 / 暗色模式,新增图片标签、全屏预览、图片编辑、批量导出功能,升级 PHP 8.3.36 依赖。
去除画廊功能,站内用户不再支持通过画廊互相查看公开图片,直链访问图片不受任何影响。这是自维护镜像(非官方)。由于上游开源版停更,应用源码 vendored 在本仓库
src/里,构建不联网拉上游。本仓库镜像地址:
ghcr.io/mole404/lsky-pro-docker:latest
最新版3.7.2📢 3.7.2 重要安全更新 - CVE 修复 (2026-10-22)
更新内容:
修复 PHP 高危漏洞:更新 PHP 版本至 8.3.36,修复 CVE-2026-109618、CVE-2026-109619,建议及时更新。
新增 PHP 上传上限环境变量:新增
PHP_UPLOAD_MAX_FILESIZE上传上限环境变量,默认值64M,可以通过修改此变量改变 PHP 的 upload_max_filesize。post_max_size 的值会自动随 upload_max_filesize 修改,post_max_size = upload_max_filesize + 4M。细节优化:优化细节,修复问题。
更新指南:
直接拉取本仓库
latest镜像,或指定版本号的镜像,拉取成功后重新部署容器即可完成更新。特性
- 全平台适配:兼容所有平台浏览器,修复上游开源版无法在 iOS 长按的问题,优化交互。
- 开箱即用:默认用 SQLite,不需要额外跑一个数据库服务;容器首次部署后浏览器打开就是安装向导。
- 低配友好:默认 Web 服务并发参数专为低配服务器优化,参数都可以通过环境变量单项覆盖。
- 安全加固:登录 / 注册等认证接口增加限流,不采信客户端伪造的转发头,移除了 SVG 上传,并淘汰了一批带 CVE 的依赖。
- 界面清爽:整套前端 UI 重做,简洁风格 + 亮色 / 暗色 / 跟随系统。深度优化手机端查看图片的手势操作体验。
- 图库功能:新增图片标签、图片编辑、全屏模式、批量导出多项功能。
快速开始
Docker Compose(推荐):
services: lsky-pro: image: ghcr.io/mole404/lsky-pro-docker:latest container_name: lsky-pro restart: unless-stopped ports: - "127.0.0.1:8089:8089" # 宿主端口:容器端口(WEB_PORT) volumes: - $PWD/lsky-pro/data:/var/www/html # 站点数据全在这个目录里($PWD = 你执行 compose 时所在的目录) environment: - WEB_PORT=8089或使用等价的
docker run:docker run -d --name lsky-pro --restart unless-stopped \ -p 127.0.0.1:8089:8089 \ -v "$PWD/lsky-pro/data:/var/www/html" \ -e WEB_PORT=8089 \ ghcr.io/mole404/lsky-pro-docker:latest容器挂载卷路径可按你的实际情况改(上例是
$PWD/lsky-pro/data,$PWD就是你执行命令时所在目录)。
上面把端口只绑到127.0.0.1:生产环境推荐这样,再在前面放一层 Nginx 反代来终结 TLS,容器本身不用直接对外。全新安装
- 容器首次部署后访问
http://<主机>:8089/,会自动跳到安装向导,更推荐设置反代访问 - 按向导填写数据库(默认 SQLite,路径可留空)与管理员账号密码
- 安装完成,开始使用
正在使用开源版 Lsky-Pro V2.1? 从上游开源版无损升级
- docker stop 旧容器名(如 lsky-pro)
- 完整备份数据目录(必做,别嫌麻烦)
- docker rm 旧容器名(如 lsky-pro)
- 根据旧版容器数据挂载路径,编辑新容器挂载卷路径,新版与上游旧版读取路径完全相同,务必确保挂载卷与旧版容器一致,挂载错误进去会报 500(数据不会丢,只是读取失败)
- 容器挂载卷路径设置正确后,拉取本仓库镜像部署即可完成升级
常见配置及注意事项
端口
环境变量 默认值 说明 WEB_PORT8089容器内 Web 服务的 HTTP 端口 HTTPS_PORT8088容器内 HTTPS 端口(自签证书,仅供内网调试,一般不用,非公网 HTTPS 访问用途!) 自签证书不随镜像发放、也不进数据卷:每个容器首次启动自己生成。想用自己的证书,把
.crt/.key挂到容器内/etc/apache2/ssl/lsky-selfsigned.crt与.key覆盖即可。
⚠再次提醒,这个自签证书只服务容器内 Apache 的 443 vhost,不是公网 HTTPS 访问用的!不是拿来反代用的那个 CA 证书!并发与内存
镜像默认内置一套面向小内存单用户的参数。每一项都能用环境变量单独覆盖:
环境变量 默认值 说明 APACHE_START_SERVERS2启动时预建的子进程数 APACHE_MIN_SPARE_SERVERS1空闲子进程下限 APACHE_MAX_SPARE_SERVERS3空闲子进程上限 APACHE_MAX_REQUEST_WORKERS5并发请求上限(内存占用的主要来源) APACHE_MAX_CONNECTIONS_PER_CHILD5单个子进程处理多少个请求后回收( 0= 永不回收)APACHE_KEEP_ALIVEOff只接受 On/Off;Off最省内存PHP_MEMORY_LIMIT64M单次请求 PHP 最多能用的内存,一般无需提高 PHP_UPLOAD_MAX_FILESIZE64M控制 PHP 的 upload_max_filesize,也就是 “单个上传文件的最大体积”</br>post_max_size 的值会自动随 upload_max_filesize 修改 </br>post_max_size = upload_max_filesize + 4M 如果您不知道这些参数起什么作用,请不要随意修改,否则有爆内存风险。
面向个人自用以上参数保持默认值即可,多用户场景下可增大。图片编辑与存储桶 CORS
当使用 AWS S3 或兼容存储(例如 Cloudflare R2)且访问地址为独立域名时,图片会以跨域方式加载。图片编辑需要读取像素,因此该域名必须返回 CORS 响应头,否则图片编辑功能可能无法正常使用。请在该存储桶的 CORS 策略中放行本站 origin,例如:
[ { "AllowedOrigins": ["https://your-domain"], "AllowedMethods": ["GET", "HEAD"], "AllowedHeaders": ["*"] } ]只需允许 GET(HEAD 可选)。图片由服务器写入桶,无需开放 PUT/POST。若桶前有 CDN 缓存,修改策略后需清除缓存。
关于这个仓库
src/是 vendored 的上游应用源码(上游已声明停止维护),本仓库在自己的分支上做了维护性修改与功能补充。相对上游改了哪些文件、为什么改,全部登记在一份清单里,可随时自查:
bash tools/diff-vs-upstream.sh它会把仓库里的
src/与上游快照逐文件对比,并校验所有偏差都落在 "已知偏离清单" 内 —— 只要它不报错,改动就恰好是清单里那些。patches/里是一份 "给人看的" 补丁存档(不参与构建 —— 构建用的就是src/里的文件)。
许可与致谢
- 应用本体:lsky-org/lsky-pro(GPL-3.0);
src/保留上游的LICENSE与全部署名。 - Docker 打包:fork 自 HalcyonAzure/lsky-pro-docker(AGPL-3.0),本仓库自身的打包脚本沿用该许可。
非官方镜像,自用为主
使用前请自行判断是否符合你的需求与合规要求
如果有其他需求,请自行 Fork 修改,本人不提供维护保障,不保证处理 issue 和 PR收藏 8支持 5反对打赏 1
📢 3.7.1 修复更新 (2026-10-19)
更新内容:
细节优化:优化多项细节,修复多项问题。有服务器自己 AI 建一个就好啦,没啥难度了
大家使用的时候如果遇到什么问题可以跟我反馈一下,我有空就修,现在我自己基本找不出大问题来了。(虽然大概率没啥人用)
已收藏已支持,感谢分享捏
等待今晚 PHP 官方修复更新发布后,本仓库也会发布紧急安全更新,专门针对CVE-2026-109618和CVE-2026-109619进行修复。
nmd 十二点了这沙比 docker 版 8.3-apache-bookworm 要是再不上我就躺尸了
看着不错呀。明天来试一下,目前还是用的免费开源的版本
📢 3.7.2 重要安全更新 - CVE 修复(2026-10-22)
修复 PHP 高危漏洞:更新 PHP 版本至 8.3.36,修复 CVE-2026-109618、CVE-2026-109619,建议及时更新。
新增 PHP 上传上限环境变量:新增
PHP_UPLOAD_MAX_FILESIZE上传上限环境变量,默认值64M,可以通过修改此变量改变 PHP 的 upload_max_filesize。post_max_size 的值会自动随 upload_max_filesize 修改,post_max_size = upload_max_filesize + 4M。细节优化:优化细节,修复问题。
更新指南:
直接拉取本仓库
ghcr.io/mole404/lsky-pro-docker:latest镜像。
拉取成功后重新部署容器即可完成更新。




