在NAS上轻松搭建Piwigo自托管相册:详细Docker部署指南
Piwigo 是一款开源的照片管理软件,专为组织、团队及个人用户设计。它提供了基于网页的完整解决方案,让您能够便捷地管理、分类、存储并与他人共享照片集合。

您可以通过其官方演示站点预览功能与界面:https://piwigo.org/demo。

安装部署
推荐使用 Docker Compose 进行快速部署。以下是一个完整的配置示例:
services:
piwigo-main:
image: piwigo/piwigo:latest
container_name: piwigo-main
ports:
- 8080:80
environment:
- TZ=Asia/Shanghai
volumes:
- ./piwigo:/var/www/html/piwigo
- ./scripts:/usr/local/bin/scripts
depends_on:
- piwigo-db
restart: always
piwigo-db:
image: docker.io/library/mariadb:lts
container_name: piwigo-db
environment:
- MARIADB_RANDOM_ROOT_PASSWORD=false
- MARIADB_DATABASE=piwigodb
- MARIADB_USER=piwigodb_user
- MARIADB_PASSWORD=piwigodb_password
- TZ=Asia/Shanghai
volumes:
- ./mysql:/var/lib/mysql
restart: always
关键参数说明(更多高级配置请查阅官方文档):
- TZ(环境变量):用于设置容器系统的时区。
- /var/www/html/piwigo(卷映射路径):用于持久化 Piwigo 的主程序与配置文件。
- /usr/local/bin/scripts(卷映射路径):可挂载自定义脚本,用于加载额外依赖或执行特定操作。
- MARIADB_RANDOM_ROOT_PASSWORD(环境变量):设置为
false以禁用 MariaDB 的 root 随机密码生成。 - MARIADB_DATABASE(环境变量):指定为 Piwigo 创建的数据库名称。
- MARIADB_USER(环境变量):定义连接数据库的专用用户名。
- MARIADB_PASSWORD(环境变量):设置上述数据库用户的连接密码。
- /var/lib/mysql(卷映射路径):用于持久化 MariaDB 数据库文件,确保数据安全。
配置与使用指南
部署完成后,在浏览器中访问 http://您的NAS IP地址:8080 即可进入 Piwigo 的初始化界面。

首先,建议将界面语言切换为“简体中文”以获得更佳体验。

接下来,根据您的 Docker Compose 配置填写数据库连接信息。若使用上述模板,参考值如下:
- 数据库服务器:
piwigo-db(即 Docker Compose 中定义的服务名) - 用户名:
piwigodb_user - 密码:
piwigodb_password - 数据库名:
piwigodb

随后,设置一个用于管理 Piwigo 站点的管理员账户。

完成所有设置后,点击“开始安装”按钮。

当出现安装成功的界面时,表明数据库连接正常,Piwigo 已就绪可用。

初次使用时,可以跳过立即添加图片的步骤。

进入主面板后,可以看到其界面设计偏向简洁实用。

点击页面右上角的链接,即可进入管理后台。

在管理后台可以查看系统状态,初始时已使用空间为零。

首先,尝试创建一个新的相册。

输入相册名称,然后点击“创建”按钮。

创建成功后,点击“添加图片”开始上传照片。

在上传界面,点击“开始上传”按钮并选择本地图片文件。

上传完成后,系统会显示成功提示。

返回网站首页,即可浏览刚刚创建的相册及其封面。

图片在相册内的网格展示效果清晰直观。

点击单张图片进入详情页,可以查看大图,但右侧信息栏的布局有时可能显示异常。

如果您对默认的主题风格不满意,Piwigo 提供了丰富的官方与社区主题供更换。

体验总结与评价
Piwigo 作为一款开源照片管理软件,其核心优势在于部署轻量化、操作逻辑简洁明了,并且原生提供了完善的中文界面支持。对于主要需求集中在基础的照片上传、分类归档、权限管理和分享的个人用户或小型团队来说,它能够有效地满足这些核心应用场景。
需要注意的是,该软件目前缺乏一些现代相册应用的流行功能,例如基于人工智能的人脸自动识别、照片地理信息标记、以及智能场景分类等高级特性。
总体而言,Piwigo 更契合那些对功能要求相对基础、注重隐私控制、且希望获得简单直接管理体验的轻量级用户。对于追求一站式智能管理、强大 AI 功能或极致交互设计体验的重度用户而言,可能会感觉其功能有所欠缺。
综合评价:
- 推荐指数:⭐(在功能丰富性上缺乏差异化优势)
- 使用体验:⭐⭐(界面设计略显陈旧,内置功能相对基础)
- 部署难度:⭐⭐⭐(采用 Docker 部署流程标准,难度适中)