私有云相册——photoprism 搭建全记录

发布于 2022-12-15  161 次阅读


安装条件

  • 一台Linux服务器
  • 好像这就够了?

安装Docker

由于我的服务器之前就已经装好了,这里建议大家自行百度。

下载docker-compose.yml文件并配置

找个位置,我这里是直接丢网站的根目录下了
cd /www/wwwroot/p.ddaodan.cn
官方文件(适用于linux amd64):
wget https://dl.photoprism.app/docker/docker-compose.yml
进入编辑
vim docker-compose.yml
修改即可,官方文档,这里我放一个我自己改的:

version: '3.5'

services:
  photoprism:
    # 使用 photoprism/photoprism:preview 来尝试抢先版
    image: photoprism/photoprism:latest
    # 设置重启策略
    restart: unless-stopped
    security_opt:
      - seccomp:unconfined
      - apparmor:unconfined
    ports:
      - "2342:2342" # HTTP 端口
    environment:
      PHOTOPRISM_ADMIN_USER: "123"                   # 设置管理员用户名
      PHOTOPRISM_ADMIN_PASSWORD: "photoprism"        # 设置管理员密码,至少包含四个字符
      PHOTOPRISM_HTTP_PORT: 2342                     # 内部监听端口
      PHOTOPRISM_HTTP_COMPRESSION: "gzip"            # 是否开启文件压缩,开启可以提升文件传输速度 (选项:none or gzip)
      PHOTOPRISM_DEBUG: "false"                      # 是否开启 debug 模式
      PHOTOPRISM_PUBLIC: "false"                     # 认证开关
      PHOTOPRISM_READONLY: "false"                   # 只读开关
      PHOTOPRISM_EXPERIMENTAL: "false"               # 是否开启实验特性
      PHOTOPRISM_DISABLE_WEBDAV: "false"             # 是否禁用 WebDAV 服务
      PHOTOPRISM_DISABLE_SETTINGS: "false"           # 是否禁用页面设置
      PHOTOPRISM_DISABLE_TENSORFLOW: "false"         # 是否禁用 TensorFlow 进行图片分类
      PHOTOPRISM_DARKTABLE_PRESETS: "false"          
      PHOTOPRISM_DETECT_NSFW: "false"                # 是否将令人感到不适的照片标记为私有
      PHOTOPRISM_UPLOAD_NSFW: "true"                 # 是否允许上传可能让人感到不适的文件
      # PHOTOPRISM_DATABASE_DRIVER: "sqlite"         # 使用 SQLite 作为数据库,已内置无需创建实例
      PHOTOPRISM_DATABASE_DRIVER: "mysql"            # 使用 MariaDB (或 MySQL) 代替 SQLite 来提升性能
      PHOTOPRISM_DATABASE_SERVER: "mariadb:3306"     # 设置 MariaDB 服务 (hostname:port)
      PHOTOPRISM_DATABASE_NAME: "photoprism"         # 设置 MariaDB 库名
      PHOTOPRISM_DATABASE_USER: "photoprism"         # 指定 MariaDB 的用户
      PHOTOPRISM_DATABASE_PASSWORD: "photoprism"     # 设置 MariaDB 用户密码
      PHOTOPRISM_SITE_URL: "http://localhost:2342/"  # PhotoPrism 访问地址
      PHOTOPRISM_SITE_TITLE: "PhotoPrism"
      PHOTOPRISM_SITE_CAPTION: "Browse Your Life"
      PHOTOPRISM_SITE_DESCRIPTION: ""
      PHOTOPRISM_SITE_AUTHOR: ""
      # 如果 docker 或 NAS 未设置用户,可以添加环境变量来设置,示例如下:
      # UID: 1000
      # GID: 1000
      # UMASK: 0000
    # 取消注释来指定用户
    # user: "1000:1000"
    volumes:
      # 图片与视频的原生目录,文件上传后先存放在这里
      - "~/Pictures:/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"
      # 缓存目录 (请勿删除):
      - "./storage:/photoprism/storage"

  mariadb:
    image: mariadb:10.5
    restart: unless-stopped
    security_opt:
      - seccomp:unconfined
      - apparmor:unconfined
    command: mysqld --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=50
    volumes:
      - "./database:/var/lib/mysql"
    environment:
      MYSQL_ROOT_PASSWORD: photoprism
      MYSQL_DATABASE: photoprism
      MYSQL_USER: photoprism
      MYSQL_PASSWORD: photoprism

# 如果需要自动更新镜像,可以取消这段注释
#
#  watchtower:
#    image: containrrr/watchtower
#    restart: unless-stopped
#    volumes:
#      - "/var/run/docker.sock:/var/run/docker.sock"

修改完成后保存退出。

启动

运行以下命令启动服务: docker-compose up -d
等待开启即可。
如果不出意外,现在就可以通过http://ip:2342来访问啦!

设置

第一次打开会让你登陆账号,登陆成功后发现页面全是英文,先去改一下中文。
打开左边侧边栏,滚动到最下面有个Settings,点进去,有个Language,选择简体中文。
这下看得懂了
其他的设置根据自己的喜好来就行。

至此,就已经搭建完成了。

踩坑

我的服务器已经好久没折腾了,这一折腾发现我系统的python寄了,连带着apt也一起寄了,我直接在启动那一步卡了两天。。。
还好dpkg是正常的,总算是给搞定了。 由于系统是Debian10,装Python3.9以上的版本都需要更新libc6,但是更不了,系统不支持。

  • alipay_img
届ける言葉を今は育ててる
最后更新于 2022-12-15