当前位置: 首页 > article >正文

家庭相册私有化方案:Docker部署PhotoPrism与跨平台管理指南

文章目录

    • 前言
    • 1.关于PhotoPrism
    • 2.本地部署PhotoPrism
    • 3.PhotoPrism简单使用
    • 4. 安装内网穿透
    • 5.配置PhotoPrism公网地址
    • 6. 配置固定公网地址

💡 推荐

前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家。【点击跳转到网站】

前言

你们是不是也有过这样的尴尬瞬间:拍了成千上万张美照,却在筛选时花大量的时间大海捞针?别担心,今天我要给大家安利一款神器——PhotoPrism!这款由前 Google 工程师 Michael Mayer 打造的开源项目,不仅能帮你自动分类和标记照片,还能让你的照片展示得如同专业画廊一般。不论是普通的 JPEG 还是专业的 RAW 格式,它都能轻松搞定。接下来,就让我们一起用 Docker 快速部署 PhotoPrism,并结合 Cpolar 内网穿透工具,实现随时随地远程管理你的珍贵回忆吧!

bd25a9678ae2307526b481f9a868dfa

1.关于PhotoPrism

  1. 智能照片组织与搜索:PhotoPrism利用AI技术,能自动识别照片中的人物、物体、场景等内容。比如,你想找一张去海边度假的照片,只需输入“海滩”,瞬间就能筛选出所有相关照片!再也不用在无数张照片里大海捞针了。
  2. 全面的文件格式支持:无论是JPG、PNG这些常见格式,还是RAW、Live Photos,甚至是视频文件,PhotoPrism都能一网打尽。这下,不管你拍的是什么照片,它都能帮你管理得井井有条。
  3. 面部识别:内置强大的面部识别功能,不仅能自动识别照片中的人脸,还能让你手动标记人名,方便按人物浏览照片。再也不怕照片里的人认不出了!
  4. 地理信息展示:如果你是个旅行达人,PhotoPrism的地理信息功能绝对会让你爱不释手。它能自动提取照片中的GPS信息,并在高清世界地图上展示出来,带你重温每一次旅行的美好记忆。
  5. WebDAV同步:提供了WebDAV同步功能,让你能与其他设备双向同步照片,轻松实现多设备间的照片管理。再也不用担心手机、电脑上的照片不同步了!

2.本地部署PhotoPrism

本例使用Docker Compose部署,如果没有安装Docker,可以查看这篇教程进行安装:《Docker安装教程——Linux、Windows、MacOS》

打开终端执行下方命令一键安装 :

sudo docker run -d \
  --name photoprism \
  --security-opt seccomp=unconfined \
  --security-opt apparmor=unconfined \
  -p 2342:2342 \
  -e PHOTOPRISM_UPLOAD_NSFW="true" \
  -e PHOTOPRISM_ADMIN_PASSWORD="insecure" \
  -v /photoprism/storage \
  -v ~/Pictures:/photoprism/originals \
  photoprism/photoprism:latest

image-20241216160256930

打开浏览器输入:localhost:2342,就能看到PhotoPrism的登录界面了。

3.PhotoPrism简单使用

第一次使用时需要设置管理员账号和密码。

初始账号是:admin,密码是:insecure,您后期可以在帐户设置页面上更改它。

登录好以后就可以进入到PhotoPrism界面来使用了。

image-20241216160614780

左下角头像设置可以设置为简体中文,使用更方便。

image-20241216161120363

上传照片后PhotoPrism会自行分类

image-20241216162228079

4. 安装内网穿透

不过我们目前只能在本地局域网内使用电脑等设备访问刚刚使用docker部署的使用PhotoPrism。使用PhotoPrism + Cpolar的组合可以完美解决这个问题,安装一个cpolar内网穿透工具就能轻松实现远程访问内网主机中部署的服务了,接下来介绍一下如何安装cpolar内网穿透。

下面是安装cpolar步骤:

Cpolar官网地址: https://www.cpolar.com

使用一键脚本安装命令

sudo curl https://get.cpolar.sh | sh

img

安装完成后,执行下方命令查看cpolar服务状态:(如图所示running即为正常启动)

sudo systemctl status cpolar

img

Cpolar安装和成功启动服务后,在浏览器上输入ubuntu主机IP加9200端口即:【http://localhost:9200】访问Cpolar管理界面,使用Cpolar官网注册的账号登录,登录后即可看到cpolar web 配置界面,接下来在web 界面配置即可:

image-20240801133735424

5.配置PhotoPrism公网地址

登录cpolar web UI管理界面后,点击左侧仪表盘的隧道管理——创建隧道:

  • 隧道名称:可自定义,本例使用了:PhotoPrism 注意不要与已有的隧道名称重复
  • 协议:http
  • 本地地址:2342
  • 域名类型:随机域名
  • 地区:选择China Top

image-20241216162501271

创建成功后,打开左侧在线隧道列表,可以看到刚刚通过创建隧道生成了两个公网地址,接下来就可以在其他电脑(异地)上,使用任意一个地址在浏览器中访问即可。

image-20241216162535094

如下图所示,成功实现使用公网地址异地远程访问本地部署的PhotoPrism

image-20241216162607577

小结

为了方便演示,我们在上边的操作过程中使用cpolar生成的HTTP公网地址隧道,其公网地址是随机生成的。这种随机地址的优势在于建立速度快,可以立即使用。然而,它的缺点是网址是随机生成,这个地址在24小时内会发生随机变化,更适合于临时使用。

如果有长期使用PhotoPrism,或者异地访问与使用其他本地部署的服务的需求,但又不想每天重新配置公网地址,还想让公网地址好看又好记并体验更多功能与更快的带宽,那我推荐大家选择使用固定的二级子域名方式来配置公网地址。

6. 配置固定公网地址

由于以上使用cpolar所创建的隧道使用的是随机公网地址,24小时内会随机变化,不利于长期远程访问。因此我们可以为其配置二级子域名,该地址为固定地址,不会随机变化。

点击左侧的预留,选择保留二级子域名,地区选择China TOP,然后设置一个二级子域名名称,填写备注信息,点击保留。

image-20241216162736226

保留成功后复制保留的二级子域名地址:PhotoPrism

登录cpolar web UI管理界面,点击左侧仪表盘的隧道管理——隧道列表,找到所要配置的隧道PhotoPrism,点击右侧的编辑

image-20241216162822480

修改隧道信息,将保留成功的二级子域名配置到隧道中

  • 域名类型:选择二级子域名
  • Sub Domain:填写保留成功的二级子域名
  • 地区: China TOP

点击更新

image-20241216162853232

现在点击在线隧道列表可以查看到公网地址已经发生变化了,此时一个永久不会变化的网址就设置好了。

image-20241216162937540

我们复制下来打开浏览器粘贴,现在我们使用固定的公网地址访问PhotoPrism可以看到访问成功。

bd34fe314067f4f0d793bb387b7c3bb

如果你还在为整理那些海量照片头疼不已,那就赶紧试试这款神器吧!PhotoPrism 绝对能成为你摄影旅途中的超级助手,让你的照片管理变得轻松愉快。如果这篇文章帮到了你,别忘了给我点个赞、分享给更多小伙伴哦!毕竟,好东西就是要大家一起享受嘛!


http://www.kler.cn/a/555091.html

相关文章:

  • java实现动态数组(二)
  • 论文阅读笔记:Tree Energy Loss: Towards Sparsely Annotated Semantic Segmentation
  • 10、k8s对外服务之ingress
  • postman传query一个数组类型的参数,并且数组里面只有一个值的时候
  • STM32 物联网智能家居 (六) OLED显示设备
  • 【HarmonyOS NEXT】获取正式应用签名证书的签名信息
  • 【python】网页批量转PDF
  • 基于图扑 HT 可视化技术打造智慧地下采矿可视化方案
  • 【Python爬虫(29)】爬虫数据生命线:质量评估与监控全解
  • Linux高并发服务器开发 第十九天(线程 进程)
  • Embedding方法:从Word2Vec到ltem2Vec
  • 输入搜索、分组展示选项、下拉选取,el-select 实现:即输入关键字检索,返回分组选项,选取跳转到相应内容页 —— VUE 项目-全局模糊检索
  • 如何发起http的请求,在系统中集成
  • 深度学习-122-大语言模型LLM之基于langchian自定义国内联网查询工具并创建智能代理
  • 开源的 LLM 应用开发平台-Dify 部署和使用
  • Redis存在线程安全问题吗?
  • 250217-数据结构
  • Py2学习笔记
  • 基于开源Odoo模块、SKF Phoenix API与IMAX-8数采网关的资产密集型企业设备智慧运维实施方案
  • RIP路由协议的知识要点