Photoview 是一个简单且用户友好的照片库

程序简介

Photoview 是一个开源的简单且用户友好的照片库,专为摄影师而设计,旨在提供一种简单快捷的方式来浏览目录,完整扫描并生成缩略图之后,可以快速浏览海量照片,非常适合本地使用。支持 RAW 文件格式和 EXIF 解析,以及常见的视频格式,并支持人脸识别

官网:https://photoview.github.io/

Github:https://github.com/photoview/photoview

官方提供了演示网站:https://photos.qpqp.dk/

  • 账号:demo
  • 密码:demo

程序特色

  • 与文件系统密切相关。该网站呈现在服务器本地文件系统上找到的图像,目录映射到相册。
  • 用户管理。每个用户都与本地文件系统上的路径一起创建,该路径中的照片可以由该用户访问。
  • 分享。相册以及个人媒体可以通过公共链接轻松共享,该链接可以选择受密码保护。
  • 为摄影而生。Photoview 是为摄影师设计的,因此支持RAW文件格式和EXIF解析。
  • 视频支持。支持许多常见的视频格式。视频将自动针​​对网络进行优化。
  • 人脸识别。会自动检测照片中的人脸,并将同一个人的照片归为一组。
  • 高性能。缩略图会自动生成,并且当照片在屏幕上可见时会首先加载它们。全屏显示缩略图,直到高分辨率图像完全加载。
  • 安全。所有媒体资源都使用 cookie 令牌进行保护,所有密码都经过适当的哈希处理,并且 API 使用严格的CORS 策略

程序预览

打开之后,就能看到主界面上以时间线显示照片,并且会根据文件夹来显示相册,以及最重要的两个功能:

如果有识别错误的人物,还可以点进去以后与另外的人物合并、移动,或者删除,总之就和那些云相册服务一样。

Photoview 提供了多用户管理功能,必须要有密码才可以访问你的相册。并且还能单独分享相册或者照片,可设置过期时间、密码,非常方便。

自带简体中文界面。

安装的话,项目给予 Go 语言,开发者推荐使用 Docker,基本上就是一键安装。推荐给喜欢折腾的各位,数据完全保存在自己电脑上,无人脸泄漏风险。

安装教程

Docker安装

mkdir Photoview  //新建Photoview目录
cd Photoview     //进入Photoview目录
touch docker-compose.yml     //新建docker-compose.yml文件
vi docker-compose.yml      //编辑docker-compose.yml文件

复制如下内容粘贴:

version: "3"

services:
  db:
    image: mariadb:10.5
    restart: always
    environment:
      - MYSQL_DATABASE=photoview
      - MYSQL_USER=photoview
      - MYSQL_PASSWORD=photosecret
      - MYSQL_RANDOM_ROOT_PASSWORD=1
    volumes:
      - db_data:/var/lib/mysql

  photoview:
    image: viktorstrate/photoview:2
    restart: always
    ports:
      - "8000:80"
    depends_on:
      - db

    environment:
      - PHOTOVIEW_DATABASE_DRIVER=mysql
      - PHOTOVIEW_MYSQL_URL=photoview:photosecret@tcp(db)/photoview
      - PHOTOVIEW_LISTEN_IP=photoview
      - PHOTOVIEW_LISTEN_PORT=80
      - PHOTOVIEW_MEDIA_CACHE=/app/cache
      
      # Optional: If you are using Samba/CIFS-Share and experience problems with "directory not found"
      # Enable the following Godebug
      # - GODEBUG=asyncpreemptoff=1
      
      
      # Optional: To enable map related features, you need to create a mapbox token.
      # A token can be generated for free here https://account.mapbox.com/access-tokens/
      # It's a good idea to limit the scope of the token to your own domain, to prevent others from using it.
      # - MAPBOX_TOKEN=<YOUR TOKEN HERE>

    volumes:
      - api_cache:/app/cache

      # Change This: to the directory where your photos are located on your server.
      # If the photos are located at `/home/user/photos`, then change this value
      # to the following: `/home/user/photos:/photos:ro`.
      # You can mount multiple paths, if your photos are spread across multiple directories.
      - ./photos_path:/photos:ro

volumes:
  db_data:
  api_cache:

注意:如果需要修改相册目录,则找到以开头的注释Change This:,然后更改值,以正确匹配您的设置。如果您只是在本地进行测试,则无需更改任何内容。

然后执行以下命令启动:

docker-compose up -d

如果文件中的端点或端口未更改docker-compose.yml,则现在可以通过http://localhost:8000访问 Photoview

使用说明

后台登录

在浏览器中输入 http://群晖IP:8810 就能看到初始化界面

  • USERNAME :用户名
  • PASSWORD:密码
  • PHOTO PATH:默认设为 /photos

完成后进入主界面

语言设置

左侧菜单 Settings 中,找到 简体中文

即选即用,界面会自动刷新。

照片扫描

将照片拷入 photos 目录

点 扫描所有使用者

返回到 时间线 ,这是根据时间来分类的

相册是按文件夹名字分类

人物 是支持按 人脸 分类

移动到照片上,点右上角 i 会显示详细信息

直接点照片,可以全屏浏览