本篇文章将详细介绍如何使用 Docker 搭建属于自己的 PhotoPrism 个人相册。
![Image](http://image109.360doc.com/DownloadImg/2024/05/2019/283867538_3_20240520071559754.jpeg)
特性PhotoPrism 具备以下主要特性: 1. 强大的搜索功能:支持按地点、日期、相册、标签等多种条件进行搜索,快速定位目标照片。 2. 图像识别技术:通过 AI 技术自动识别和分类照片中的内容,如人脸、物体、场景等。 3. 多格式支持:支持多种图像和视频格式,包括 JPEG、PNG、HEIF、RAW、MP4 等。 4. 隐私保护:用户数据完全由自己掌控,支持私有部署,确保照片的安全和隐私。 5. 多平台访问:支持网页浏览,移动端适配良好,可以在手机、平板和电脑上无缝使用。 6. 开源免费:PhotoPrism 是一个开源项目,免费供个人和团队使用,并且可以根据需要进行定制和扩展。
应用场景PhotoPrism 适用于以下场景: 1. 个人相册管理:帮助用户整理日常生活中的照片,按时间、地点、事件等分类,方便回顾和分享。 2. 摄影师作品集:摄影师可以使用 PhotoPrism 管理和展示自己的作品集,方便查找和展示。 3. 家庭照片库:将家庭成员的照片集中存储和管理,方便全家人一起浏览和分享美好回忆。 4. 团队合作:团队可以使用 PhotoPrism 共同管理项目照片,支持标签、注释等功能,方便协作。
快速搭建接下来,我们将介绍如何使用 Docker 快速搭建属于自己的 PhotoPrism 个人相册。 步骤1:准备工作在开始之前,请确保你的系统已经安装了 Docker 和 Docker Compose。如果尚未安装,可以参考以下链接进行安装: · Docker 安装指南 · Docker Compose 安装指南
步骤2:创建项目目录首先,我们需要创建一个目录来存放 PhotoPrism 的配置文件和数据文件。在终端中运行以下命令: mkdir -p ~/photoprism/{data,config} cd ~/photoprism
步骤3:创建 Docker Compose 文件在 ~/photoprism 目录下创建一个 docker-compose.yml 文件,内容如下: version: '3.5'
services: photoprism: image: photoprism/photoprism:latest container_name: photoprism restart: unless-stopped security_opt: - seccomp:unconfined ports: - '2342:2342' environment: PHOTOPRISM_ADMIN_PASSWORD: 'YourPasswordHere' # 管理员密码 PHOTOPRISM_UPLOAD_NSFW: 'true' # 允许上传 NSFW 内容 PHOTOPRISM_DEBUG: 'false' # 禁用调试模式 PHOTOPRISM_PUBLIC: 'false' # 设置为私有模式 PHOTOPRISM_READONLY: 'false' # 禁用只读模式 volumes: - './data:/photoprism/storage' # 持久化存储路径 - './config:/photoprism/originals' # 配置文件路径
确保将 PHOTOPRISM_ADMIN_PASSWORD 替换为你自己的管理员密码。 步骤4:启动 PhotoPrism 服务在终端中运行以下命令来启动 PhotoPrism 服务: docker-compose up -d
这将会下载 PhotoPrism 的 Docker 镜像并启动容器。你可以使用 docker-compose logs -f 查看启动日志,确保服务正确启动。 步骤5:访问 PhotoPrism打开浏览器,访问 http://localhost:2342 。使用步骤3中设置的管理员密码登录 PhotoPrism。首次登录后,你可以按照提示进行基本的配置和设置。 ![Image](http://image109.360doc.com/DownloadImg/2024/05/2019/283867538_4_20240520071559894.png)
步骤6:上传和管理照片登录 PhotoPrism 后,你可以开始上传和管理你的照片。以下是一些常见操作: 上传照片点击页面右上角的上传按钮,选择你想要上传的照片。上传完成后,PhotoPrism 会自动对照片进行索引和分类。 ![Image](http://image109.360doc.com/DownloadImg/2024/05/2019/283867538_5_2024052007160067.png) 浏览照片PhotoPrism 提供了多种浏览方式,你可以按时间、地点、相册等方式浏览照片。点击照片可以查看详细信息并进行编辑。 ![Image](http://image109.360doc.com/DownloadImg/2024/05/2019/283867538_6_20240520071600285.jpeg)
搜索照片PhotoPrism 内置了强大的搜索功能,你可以通过关键词、拍摄日期、地点等条件快速找到所需的照片。 高级配置PhotoPrism 提供了丰富的配置选项,以下是一些常见的高级配置: 数据库配置默认情况下,PhotoPrism 使用 SQLite 作为数据库。如果你需要更高的性能和并发能力,可以切换到 MySQL 或 PostgreSQL。 在 docker-compose.yml 文件中添加数据库服务并修改 PhotoPrism 的环境变量,例如: services: db: image: mysql:8.0 container_name: photoprism-db restart: unless-stopped environment: MYSQL_ROOT_PASSWORD: 'YourDbRootPassword' MYSQL_DATABASE: 'photoprism' MYSQL_USER: 'photoprism' MYSQL_PASSWORD: 'YourDbPassword' volumes: - 'photoprism-db-data:/var/lib/mysql' photoprism: environment: PHOTOPRISM_DATABASE_DRIVER: 'mysql' PHOTOPRISM_DATABASE_SERVER: 'db:3306' PHOTOPRISM_DATABASE_NAME: 'photoprism' PHOTOPRISM_DATABASE_USER: 'photoprism' PHOTOPRISM_DATABASE_PASSWORD: 'YourDbPassword'
HTTPS 配置为了确保数据传输的安全性,可以配置 HTTPS。可以使用 Nginx 作为反向代理,配置示例如下: services: nginx: image: nginx:latest container_name: photoprism-nginx restart: unless-stopped ports: - '443:443' - '80:80' volumes: - './nginx.conf:/etc/nginx/nginx.conf' - './certs:/etc/nginx/certs'
创建一个 nginx.conf 文件,配置 Nginx 反向代理和 HTTPS 证书: server { listen 80; server_name yourdomain.com; return 301 https://$host$request_uri; }
server { listen 443 ssl; server_name yourdomain.com;
ssl_certificate /etc/nginx/certs/fullchain.pem; ssl_certificate_key /etc/nginx/certs/privkey.pem;
location / { proxy_pass http://photoprism:2342; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header X-Forwarded-Proto $scheme; } }
将 yourdomain.com 替换为你的域名,并将 SSL 证书文件放到 certs 目录下。 总结希望你能够快速上手并享受使用 PhotoPrism 管理照片的乐趣。如果在搭建过程中遇到任何问题,可以参考 PhotoPrism 的官方文档或社区支持。
参考资料:
https://github.com/photoprism/photoprism/
|