
本镜像包含Lychee照片管理系统、nginx和PHP-FPM,其配置(PHP、nginx等)遵循Lychee***推荐标准。支持amd64、arm64/aarch64、armv6、armv7多种架构,适用于快速搭建个人或家庭照片库,支持多种数据库后端。
latest:最新Lychee发布版v[NUMBER]:Lychee稳定版本标签(如v4.7.0)nightly(别名dev):当前主分支标签(Lychee主分支保持稳定,通常可安全使用)devtools:包含开发依赖的主分支版本testing:用于测试新分支和拉取请求的标签,主要供LycheeOrg内部使用alpha:当前alpha分支标签(包含未经过同行评审的前沿变更)alpha-devtools:包含开发依赖的alpha分支版本若使用内置SQLite支持,无需外部依赖。最简单的启动命令:
bashdocker run -p 80 lycheeorg/lychee:dev
容器将在本地随机端口启动Lychee服务。更多运行选项见下文。
若使用MySQL、MariaDB或PostgreSQL,需提前准备外部数据库服务(可通过Docker容器部署,例如在docker-compose.yml中定义):
docker run或docker-compose中传递环境变量.env文件并挂载至容器/conf/.env路径-e DB_CONNECTION=,首次访问时通过浏览器完成安装向导确保已连接至数据库容器所在网络!
以下示例使用--net连接数据库所在网络,--link关联数据库容器:
bashdocker run -d \ --name=lychee \ -v /宿主机路径/lychee/conf:/conf \ -v /宿主机路径/lychee/uploads:/uploads \ -v /宿主机路径/lychee/sym:/sym \ -e PUID=1000 \ -e PGID=1000 \ -e PHP_TZ=Asia/Shanghai \ -e TIMEZONE=Asia/Shanghai \ -e DB_CONNECTION=mysql \ -e DB_HOST=mariadb \ -e DB_PORT=3306 \ -e DB_DATABASE=lychee \ -e DB_USERNAME=user \ -e DB_PASSWORD=password \ -p 90:80 \ --net network_name \ --link db_name \ lycheeorg/lychee
注意:若使用MySQL数据库,需确保启用mysql_native_password认证插件。可在启动MySQL时添加--default-authentication-plugin=mysql_native_password选项,或执行以下SQL命令:
sqlalter user 'lychee' identified with mysql_native_password by '<你的密码>';
修改示例配置文件中的环境变量以匹配数据库凭据。
为避免明文存储凭据,可创建db_secrets.env文件,并通过env_file指令引用(详见Docker Compose文档)。
若设置ADMIN_USER和ADMIN_PASSWORD(或ADMIN_PASSWORD_FILE)环境变量,首次运行时将自动创建管理员账户。未设置时,首次加载Lychee会在浏览器中提示创建管理员。
除通过环境变量传递敏感信息外,可在部分环境变量后添加_FILE后缀,使初始化脚本从容器内文件加载值(适用于Docker Secrets,文件路径通常为/run/secrets/<secret_name>)。若同时设置原变量和_FILE变量(如DB_PASSWORD和DB_PASSWORD_FILE),将优先使用原变量。
支持的_FILE变量:
DB_PASSWORD_FILEREDIS_PASSWORD_FILEMAIL_PASSWORD_FILEADMIN_PASSWORD_FILE若未提供环境变量或.env文件,将使用示例.env文件,其中部分Docker特定变量默认值如下:
| 变量名 | 默认值 | 说明 |
|---|---|---|
PUID | 1000 | 运行容器的用户ID |
PGID | 1000 | 运行容器的用户组ID |
USER | lychee | 容器内运行用户名称 |
PHP_TZ | UTC | PHP时区 |
STARTUP_DELAY | 0 | 启动延迟时间(秒) |
默认配置中,nginx支持最大100MB文件上传(client_max_body_size 100M),PHP参数已按Lychee FAQ推荐优化。如需进一步自定义:
php.ini将自定义php.ini挂载至/etc/php/8.2/fpm/php.ini,但此方式会覆盖所有PHP参数,且PHP版本更新时需重新适配。
fastcgi_param PHP_VALUE [...]开头的行upload_max_filesize = 200M)client_max_body_size)/etc/nginx/nginx.conf如需添加(非修改)nginx指令,可将文件挂载至/etc/nginx/conf.d/,这些文件会在http上下文中被自动包含。
来自真实用户的反馈,见证轩辕镜像的优质服务
免费版仅支持 Docker Hub 加速,不承诺可用性和速度;专业版支持更多镜像源,保证可用性和稳定速度,提供优先客服响应。
免费版仅支持 docker.io;专业版支持 docker.io、gcr.io、ghcr.io、registry.k8s.io、nvcr.io、quay.io、mcr.microsoft.com、docker.elastic.co 等。
当返回 402 Payment Required 错误时,表示流量已耗尽,需要充值流量包以恢复服务。
通常由 Docker 版本过低导致,需要升级到 20.x 或更高版本以支持 V2 协议。
先检查 Docker 版本,版本过低则升级;版本正常则验证镜像信息是否正确。
使用 docker tag 命令为镜像打上新标签,去掉域名前缀,使镜像名称更简洁。
探索更多轩辕镜像的使用方法,找到最适合您系统的配置方式
通过 Docker 登录认证访问私有仓库
在 Linux 系统配置镜像加速服务
在 Docker Desktop 配置镜像加速
Docker Compose 项目配置加速
Kubernetes 集群配置 Containerd
在宝塔面板一键配置镜像加速
Synology 群晖 NAS 配置加速
飞牛 fnOS 系统配置镜像加速
极空间 NAS 系统配置加速服务
爱快 iKuai 路由系统配置加速
绿联 NAS 系统配置镜像加速
QNAP 威联通 NAS 配置加速
Podman 容器引擎配置加速
HPC 科学计算容器配置加速
ghcr、Quay、nvcr 等镜像仓库
无需登录使用专属域名加速
需要其他帮助?请查看我们的 常见问题 或 官方QQ群: 13763429