Photoprism搭建与使用 freecrazy 2021-12-20T19:13:27+08:00 1589

超强个人云相册工具

一、前因

看到个东西,不把玩一下手痒;听说这个东西吃内存,那我8G树莓派也不会让它太好过;进入官网直接还有树莓派的安装教程,看来是天然支持的;看了下语言是GO!!!,三个感叹号表明我的态度。

那不得好好盘它——photoprism,一款照片管理器,支持时间、地点、还有AI自动识别照片类型。

这不就跟手机上的相册如出一辙吗?那搭建好了,不是就有一个“云手机相册”了。

既然是云,那分享照片还需要再一个个点?还只能点9张,忘了点原图你还得撤回再点,而且你还会找不到点到哪了,而且图片过大你还不能发送。

嗯,说得没错,我只是单纯的抱怨某款软件罢了。

二、安装

官方都推荐用docker-compose安装,这不撞到我枪口上了。

官方文档在这:https://docs.photoprism.app/getting-started/docker-compose/

先建个目录把官方的docker-compose.yml文件撸下来。

# 新建目录,进入目录
mkdir /opt/photoprism  && cd /opt/photoprism
# 拉取官方docker-compose
wget https://dl.photoprism.app/docker/arm64/docker-compose.yml

打开之后你会发现,这啥玩意,注释密密麻麻的,做个好事,优化一下吧。

version: '3.5'

services:
  photoprism:
    image: photoprism/photoprism:latest
    container_name: photoprism
    restart: unless-stopped
    security_opt:
      - seccomp:unconfined
      - apparmor:unconfined
    ports:
      - "2342:2342" # 端口映射
    environment:
      PHOTOPRISM_ADMIN_PASSWORD: "123456789"          # 密码
      PHOTOPRISM_SITE_URL: "http://localhost:2342/"  # 访问链接
      PHOTOPRISM_ORIGINALS_LIMIT: 6000               # 最大源文件限制,单位是MB
      PHOTOPRISM_HTTP_COMPRESSION: "gzip"            # 是否压缩,提高速度,值:none,gzip
      PHOTOPRISM_WORKERS: 2                          # 索引工作者的数量
      PHOTOPRISM_DEBUG: "false"                      # debug模式
      PHOTOPRISM_PUBLIC: "false"                     # 是否公共
      PHOTOPRISM_READONLY: "false"                   # 是否只读
      PHOTOPRISM_EXPERIMENTAL: "false"               # 是否禁止实验功能
      PHOTOPRISM_DISABLE_CHOWN: "false"              # 是否禁止权限更新
      PHOTOPRISM_DISABLE_WEBDAV: "false"             # 是否禁止webdav
      PHOTOPRISM_DISABLE_SETTINGS: "false"           # 是否禁止网页设置
      PHOTOPRISM_DISABLE_TENSORFLOW: "false"         # 是否禁止AI
      PHOTOPRISM_DISABLE_FACES: "false"              # 是否禁止人脸识别
      PHOTOPRISM_DISABLE_CLASSIFICATION: "false"     # 是否禁止图像分类
      PHOTOPRISM_DARKTABLE_PRESETS: "true"           # 是否并发
      # PHOTOPRISM_FFMPEG_ENCODER: "h264_v4l2m2m"    # 视频编码(默认值:libx264)
      PHOTOPRISM_FFMPEG_BUFFERS: "64"              # 视频缓存(默认值:32)
      PHOTOPRISM_DETECT_NSFW: "false"                # 照片标记为隐私
      PHOTOPRISM_UPLOAD_NSFW: "true"                 # 允许不安全的上传
      # PHOTOPRISM_DATABASE_DRIVER: "sqlite"         # sqllite数据库
      PHOTOPRISM_DATABASE_DRIVER: "mysql"            # mysql数据库
      PHOTOPRISM_DATABASE_SERVER: "mariadb:3306"     # 数据库地址
      PHOTOPRISM_DATABASE_NAME: "photoprism"         # 数据库名
      PHOTOPRISM_DATABASE_USER: "root"         # 用户名
      PHOTOPRISM_DATABASE_PASSWORD: "123456789"       # 密码
      PHOTOPRISM_SITE_TITLE: "闲余悟道"  # 网站title
      PHOTOPRISM_SITE_CAPTION: ""  # 网站标题
      PHOTOPRISM_SITE_DESCRIPTION: "个人照片"  # 网站描述
      PHOTOPRISM_SITE_AUTHOR: "癫狂傲骨"  # 网站作者
      # 用户权限
      # PHOTOPRISM_UID: 1000
      # PHOTOPRISM_GID: 1000
      # PHOTOPRISM_UMASK: 0000
      HOME: "/photoprism"
    ## 硬件设备
    # devices:
    #  - "/dev/video11:/dev/video11" # Video4Linux (h264_v4l2m2m)
    working_dir: "/photoprism"  # 工作目录
    volumes:
      ## 照片地址
      - "/data/photoprism:/photoprism/originals"  # 挂载路径
      ## 多路径挂载
      # - "/mnt/Family:/photoprism/originals/Family"    # [folder 1]:/photoprism/originals/[folder 1]
      # - "/mnt/Friends:/photoprism/originals/Friends"  # [folder 2]:/photoprism/originals/[folder 2]
      ## 这个就是如果你挂载的路径有文件他会自动导入,看需启用
      # - "~/Import:/photoprism/import"
      ## 缓存路径
      - "/data/photoprism-storage:/photoprism/storage"

  ## 数据库配置,以前建好了,只要加入数据库网络即可,不知道的看以前文章
  # mariadb:
  #   restart: unless-stopped
  #   image: arm64v8/mariadb:10.6 # this mariadb image runs on ARM64-based devices only
  #   security_opt:
  #     - seccomp:unconfined
  #     - apparmor:unconfined
  #   command: mysqld --innodb-buffer-pool-size=128M --transaction-isolation=READ-COMMITTED --character-set-server=utf8mb4 --collation-server=utf8mb4_unicode_ci --max-connections=512 --innodb-rollback-on-timeout=OFF --innodb-lock-wait-timeout=120
  #   ## Never store database files on an unreliable device such as a USB flash drive or a shared network folder:
  #   volumes:
  #     - "./database:/var/lib/mysql" # Important, don't remove
  #   environment:
  #     MYSQL_ROOT_PASSWORD: insecure
  #     MYSQL_DATABASE: photoprism
  #     MYSQL_USER: photoprism
  #     MYSQL_PASSWORD: insecure


  # 配置自动升级
  watchtower:
    restart: unless-stopped
    image: containrrr/watchtower
    environment:
      WATCHTOWER_CLEANUP: "true"
      WATCHTOWER_POLL_INTERVAL: 7200 # checks for updates every two hours
    volumes:
      - "/var/run/docker.sock:/var/run/docker.sock"
      # - "~/.docker/config.json:/config.json" # Optional, for authentication if you have a Docker Hub account

networks:
  default:
    external: true
    name: dbnet

docker-compose up -d 启动,居然打不开,查看日志,好吧,数据库没有,真不智能,去以前建好的adminer中建立数据库。

三、基本操作

输入IP+2342访问,成功,输入123456789(对应你yml文件中的密码)

登录之后,第一步自然是改成中文啦,见下图

先建个相册,甩几张图片瞧瞧。

手机照片会自动把地点时间识别出来,类似手机那一套,都是中文,没啥看不懂的,为了自身安全,我就不放图片了。

如果是从文件管理器中直接复制进photoprism目录的,需要重新索引一下才会显示。

如果比较多,建议使用命令行操作:进入yml文件夹,运行下面命令。

docker-compose exec photoprism photoprism index --cleanup

手机端官方文档是用photosync这款软件,下载好后使用webdav连接上photoprism就可以了。软件全英文,还收费$3.99,不贵,有需要的自己看着来。

四、总结

要是这么些年的照片视频全给丢一份过来,渲染出来还是挺有期待感的,也可以借此验证一下go语言的超快特性。

但,但是,太费时了,而且不小心可能还会掉入回忆的陷阱,还是留着耄耋之年再做这件事吧,说不定以后有更先进的工具了呢。

人生还是值得憧憬的。

收工!

© 2021 - 2024 闲余悟道

载入运行时间...

avatar
关于我

癫狂乐天,狂放不羁,叛世逆俗,天纯不可一世。

跑酷

游戏玩腻,自个寻的,只喜纯跑,不喜炫技

滑板

身处异乡,未找到跑酷伙伴,转投滑板,oli练到死

骑行

通勤会的,通着通着成了爱好,不攀里数,不懂车构,菜腿一枚

爬山

老妈生错了生肖,喜欢在台阶或石头上蹦跶

设计

大学学的,PS效率实用流

代码

培训得的,已弃坑,得益于此,软件玩得起飞,如本博客内容

剪辑

无聊学的,人生苦短,想学的太多,学会罢了,我应该会了了吧……

写作

读书多了自然而然就……he,tui,人人都会,正在精进中

独自环过岛

海南岛,9天骑行,一人一包一帐篷,事故故事一堆堆

只身入过藏

心之所向,21点的太阳妙不可言

万里路

不少,如……

万卷书

微多,如……


人生苦短,繁华三千,可纵情声色,亦可摇桨泛舟。

碎年流光,若都平淡如水,岂非虚度一遭。

波澜不惊的一生虽不可恨,但数载光阴就历尽沧桑的生活应该更畅快。

别试图在文章末尾评论处留言,那只是摆设,不过若是打赏,我定会收到心意。联系方式本页社交链接中有猫腻。

清心决

心若冰清,天塌不惊。

万变犹定,神怡气静。

尘垢不沾,俗相不染。

虚空甯宓,浑然无物。

无有相生,难易相成。

份与物忘,同乎混涅。

天地无涯,万物齐一。

飞花落叶,虚怀若谷。

千般烦忧,才下心头。

即展眉头,灵台清幽。

心无挂碍,意无所执。

解心释神,莫然无魂。

水流心不惊,云在意俱迟。

一心不赘物,古今自逍遥。

自由转载-非商用-转载注明出处即可。