1、前言

1.1、问题背景:

照片管理作为使用nas的基本功能,之前一直用群晖自带的photos,优点有很多,自家程序,有免费app自动同步手机中的照片。但我使用起有点关于分享照片的问题,群晖phtots是一个基于个人账户的照片管理,主要是为了多账户使用保护每个人的隐私,这点其实是没问题的。

但对于一个家庭来说,还是有很多照片需要集中起来,方便整个家庭进行观看的,但我使用的群晖phtots共享功能并不好用,分享和查看都比较费劲,所以想找一个软件能够将这些家庭的照片单独管理起来

1.2、解决方式:

在网上也找了很多软件测试,有的是平台式的,不利于个人隐私保护,有的界面和功能比较简陋,最终找到这款免费可docker部署的软件Photoprism,是真的很强大,官方链接:https://www.photoprism.app/

2、部署教程:

官网文档已经给我提供了比较详细的英文教程,我这里主要使用中文+操作图片的步骤再重新描述一些,但没有针对群辉系统的实操文档,英文好和理解能力强的同学也可以直接看官方文档。官方安装文档:https://docs.photoprism.app/getting-started/docker-compose/

2.1、文件夹建立

我们需要先创建和确定三个文件夹,便于容器中的文件夹进行映射

  • 照片原始文件存储文件夹:originals

  • Photoprism容器配置文件夹:storage

  • MariaDB 容器配置文件夹:database

我这里是在docker文件夹下创建了一个photoprism文件夹,并在photoprism下创建storage,database文件夹,因为这些都是容器的一些配置信息,官方推荐也是放到SSD的磁盘中,我这里整个docker文件都是在SSD的磁盘中

originals文件夹作为图片的原始文件,比较重要,所以我放在了具有容错功能的机械硬盘的卷上,这里我直接在现有的photos的文件夹下创建photoprism/originals文件夹

2.2、容器项目创建

2.2.1、下载docker配置文件

首先,我们需要在官网上下载两个文件:

  • stack.env:下载地址:https://dl.photoprism.app/docker/portainer/stack.env

  • stack.yml:下载地址:https://dl.photoprism.app/docker/portainer/stack.yml

并将下载完成的文件放入到2.1中docker/photoprism文件夹下

2.2.2、项目创建

打开ContainerManager软件,点击项目菜单,点击新增,输入项目名称,路径选择我们docker文件夹创建的photoptism文件夹(我这里是已经创建过了,为了演示创建了一个2),来源设置为创建docker-compose.yml。我们打开刚才下载的stack.yml,将网页中的全部代码复制到下面的代码框中

然后我们对代码中的Volumes进行修改,根据2.1中你确定好的三个文件夹进行调整

volumes:
      - "/volume1/photo/photoprism/originals:/photoprism/originals"
      - "/volume2/docker/photoprism/storage:/photoprism/storage" 

volumes:
      - "/volume2/docker/photoprism/database:/var/lib/mysql"

点击下一步,下一步,完成。等待程序启动

ps: photoprism软件需要依赖数据库运行,并且需要11.x以上的版本,我们自己平时使用的mysql 5.6/5.7/8.0 均不能支持,所以这里还是在单独创建一份mariaDB 支持,我们保持代码默认即可

3、使用

容器运行正常后,我们打开http://192.168.xxx.xxx:2342,输入用户名:admin; 密码:insecure, 即可登录进入,用户名密码我们可以在容器设置,环境变量中找到

进入后我们点击setting,找到language,将语言修改成简体中文

然后我们点击上方菜单的账号,点击修改密码,将程序默认的密码给修改掉

接下来我们就可以正常上次图片了,回到搜索界面,点击左上方的云朵按钮,即可进入上传页面

进入后我们可以创建自己分类的文件夹,或者选择已有的文件夹进行上传,每次上传完成后,等待程序索引完成,照片既可进行使用