目录
一、引言
PhotoPrism 是一款开源的照片管理工具,基于 AI 技术,能够自动对照片进行分类、标记和人脸识别。它支持多种照片格式,包括 RAW 文件,并且可以通过 Docker 快速部署。本文将详细介绍如何使用 Docker 部署 PhotoPrism,让你轻松搭建属于自己的智能相册。
二、准备工作
在开始之前,请确保你的系统已经安装了 Docker 和 Docker Compose。如果尚未安装,可以参考以下链接进行安装:
-
Docker 安装指南
-
Docker Compose 安装指南
三、创建项目目录
我们需要创建一个目录来存放 PhotoPrism 的配置文件和数据文件。在终端中运行以下命令:
bash复制
mkdir -p ~/photoprism/{data,config}
cd ~/photoprism
这个目录结构将用于存储 PhotoPrism 的数据和配置文件。
四、创建 Docker Compose 文件
在 ~/photoprism
目录下创建一个 docker-compose.yml
文件,内容如下:
yaml复制
version: '3.5'
services:
photoprism:
image: photoprism/photoprism:latest
container_name: photoprism
restart: unless-stopped
security_opt:
- seccomp:unconfined
- apparmor:unconfined
ports:
- "2342:2342" # HTTP 端口
environment:
PHOTOPRISM_ADMIN_USER: "admin" # 管理员用户名
PHOTOPRISM_ADMIN_PASSWORD: "YourPasswordHere" # 管理员密码
PHOTOPRISM_UPLOAD_NSFW: "true" # 允许上传 NSFW 内容
PHOTOPRISM_PUBLIC: "false" # 设置为私有模式
PHOTOPRISM_READONLY: "false" # 禁用只读模式
volumes:
- "./data:/photoprism/storage" # 持久化存储路径
- "./config:/photoprism/originals" # 配置文件路径
确保将 PHOTOPRISM_ADMIN_PASSWORD
替换为你自己的管理员密码。
另外给出docker启动方式
docker run -d \
--name photoprism \
--security-opt seccomp=unconfined \
--security-opt apparmor=unconfined \
-p 2342:2342 \
-e PHOTOPRISM_UPLOAD_NSFW="true" \
-e PHOTOPRISM_ADMIN_PASSWORD="insecure" \
-v /photoprism/storage \
-v ~/Pictures:/photoprism/originals \
photoprism/photoprism:latest
五、启动 PhotoPrism 服务
在终端中运行以下命令来启动 PhotoPrism 服务:
bash复制
docker-compose up -d
这将会下载 PhotoPrism 的 Docker 镜像并启动容器。你可以使用以下命令查看启动日志:
bash复制
docker-compose logs -f
确保服务正确启动。
六、访问 PhotoPrism
打开浏览器,访问 http://localhost:2342
。使用你在 docker-compose.yml
文件中设置的管理员用户名和密码登录 PhotoPrism。
七、上传和管理照片
登录后,你可以开始上传和管理你的照片。PhotoPrism 会自动对照片进行索引和分类。以下是一些常见操作:
-
上传照片:点击页面右上角的上传按钮,选择你想要上传的照片。
-
设置语言:左下角头像设置可以切换为简体中文,使用更方便。
-
照片分类:PhotoPrism 会根据时间、地点和内容自动分类照片。
八、高级配置
1. 使用 MariaDB 提高性能
PhotoPrism 支持使用 MariaDB 或 MySQL 作为数据库,以提高性能。你可以在 docker-compose.yml
文件中添加以下内容:
yaml复制
mariadb:
image: mariadb:10.11
restart: unless-stopped
command: mariadbd --innodb-buffer-pool-size=512M --lower-case-table-names=1
volumes:
- "database:/var/lib/mysql"
environment:
MARIADB_DATABASE: "photoprism"
MARIADB_USER: "photoprism"
MARIADB_PASSWORD: "insecure"
MARIADB_ROOT_PASSWORD: "insecure"
volumes:
database:
driver: local
然后重新启动服务。
2. 自动更新
你可以使用 Watchtower 自动更新 PhotoPrism 容器。在 docker-compose.yml
文件中添加以下内容:
yaml复制
watchtower:
restart: unless-stopped
image: containrrr/watchtower
environment:
WATCHTOWER_CLEANUP: "true"
WATCHTOWER_POLL_INTERVAL: 7200
volumes:
- "/var/run/docker.sock:/var/run/docker.sock"
重新启动服务后,Watchtower 将每两小时检查一次更新。
九、注意事项
-
安全性:不要使用默认密码,建议定期更换管理员密码。
-
备份数据:定期备份
~/photoprism/data
目录,以防止数据丢失。 -
资源需求:PhotoPrism 对计算资源有一定要求,建议分配至少 4GB 内存。
十、总结
通过 Docker 部署 PhotoPrism,你可以轻松搭建一个功能强大的个人照片管理系统。结合 AI 技术,PhotoPrism 能够自动分类和标记照片,让你的照片管理更加高效。希望本文能帮助你快速上手 PhotoPrism。
如果你有任何问题或建议,欢迎在评论区留言!