网站LOGO
橙子小站
页面加载中
7月13日
网站LOGO 橙子小站
菜单
使用 Docker 搭建属于自己的个人相册
正文
  • 橙子小站
    用户的头像
    首次访问
    上次留言
    累计留言
    我的等级
    我的角色
    打赏二维码
    打赏博主
    使用 Docker 搭建属于自己的个人相册
    点击复制本页信息
    微信扫一扫
    文章二维码
    文章图片 文章标题
    创建时间
  • 一 言
    确认删除此评论么? 确认
    搜 索
  • 本弹窗介绍内容来自,本网站不对其中内容负责。

    使用 Docker 搭建属于自己的个人相册

    orangejuice00 · 原创 ·
    技术分享docker · 暂无标签
    共 4395 字 · 约 3 分钟 · 261

    随着数码设备的普及,许多人都积累了大量的照片和视频。如何高效地管理、浏览和分享这些数字资产成了一个重要问题。
    PhotoPrism 是一款开源的照片管理应用,它通过先进的图像识别技术和用户友好的界面,帮助用户轻松地管理和分享照片。
    本篇文章将详细介绍如何使用 Docker 搭建属于自己的 PhotoPrism 个人相册。

    特性

    PhotoPrism 具备以下主要特性:

    1. 强大的搜索功能:支持按地点、日期、相册、标签等多种条件进行搜索,快速定位目标照片。
    2. 图像识别技术:通过 AI 技术自动识别和分类照片中的内容,如人脸、物体、场景等。
    3. 多格式支持:支持多种图像和视频格式,包括 JPEG、PNG、HEIF、RAW、MP4 等。
    4. 隐私保护:用户数据完全由自己掌控,支持私有部署,确保照片的安全和隐私。
    5. 多平台访问:支持网页浏览,移动端适配良好,可以在手机、平板和电脑上无缝使用。
    6. 开源免费:PhotoPrism 是一个开源项目,免费供个人和团队使用,并且可以根据需要进行定制和扩展。

    应用场景

    1. 个人相册管理:帮助用户整理日常生活中的照片,按时间、地点、事件等分类,方便回顾和分享。
    2. 摄影师作品集:摄影师可以使用 PhotoPrism 管理和展示自己的作品集,方便查找和展示。
    3. 家庭照片库:将家庭成员的照片集中存储和管理,方便全家人一起浏览和分享美好回忆。
    4. 团队合作:团队可以使用 PhotoPrism 共同管理项目照片,支持标签、注释等功能,方便协作。

    如何搭建

    步骤1:准备工作

    在开始之前,请确保你的系统已经安装了 Docker 和 Docker Compose。

    步骤2:创建项目目录

    mkdir -p ~/photoprism/{data,config}
    cd ~/photoprism

    步骤3:创建 Docker Compose 文件

    在 ~/photoprism 目录下创建一个 docker-compose.yml 文件,内容如下:

    text 代码:
    
    services:
      photoprism:
        image: photoprism/photoprism:latest
        container_name: photoprism
        restart: unless-stopped
        security_opt:
          - seccomp:unconfined
        ports:
          - "2342:2342"
        environment:
          PHOTOPRISM_ADMIN_PASSWORD: "YourPasswordHere" # 管理员密码
          PHOTOPRISM_UPLOAD_NSFW: "true"                # 允许上传 NSFW 内容
          PHOTOPRISM_DEBUG: "false"                     # 禁用调试模式
          PHOTOPRISM_PUBLIC: "false"                    # 设置为私有模式
          PHOTOPRISM_READONLY: "false"                  # 禁用只读模式
        volumes:
          - "./data:/photoprism/storage"                # 持久化存储路径
          - "./config:/photoprism/originals"            # 配置文件路径

    确保将 PHOTOPRISM_ADMIN_PASSWORD 替换为你自己的管理员密码。

    步骤4:启动 PhotoPrism 服务

    在终端中运行以下命令来启动 PhotoPrism 服务:
    docker-compose up -d
    这将会下载 PhotoPrism 的 Docker 镜像并启动容器。你可以使用 docker-compose logs -f 查看启动日志,确保服务正确启动。

    步骤5:访问 PhotoPrism

    打开浏览器,访问 http://localhost:2342。使用步骤3中设置的管理员密码登录 PhotoPrism。首次登录后,你可以按照提示进行基本的配置和设置。

    步骤6:上传和管理照片

    登录 PhotoPrism 后,你可以开始上传和管理你的照片。以下是一些常见操作:

    上传照片

    点击页面右上角的上传按钮,选择你想要上传的照片。上传完成后,PhotoPrism 会自动对照片进行索引和分类。

    浏览照片

    PhotoPrism 提供了多种浏览方式,你可以按时间、地点、相册等方式浏览照片。点击照片可以查看详细信息并进行编辑。

    搜索照片

    PhotoPrism 内置了强大的搜索功能,你可以通过关键词、拍摄日期、地点等条件快速找到所需的照片。

    高级配置

    PhotoPrism 提供了丰富的配置选项,以下是一些常见的高级配置:

    数据库配置

    默认情况下,PhotoPrism 使用 SQLite 作为数据库。如果你需要更高的性能和并发能力,可以切换到 MySQL 或 PostgreSQL。

    在 docker-compose.yml 文件中添加数据库服务并修改 PhotoPrism 的环境变量,例如:

    services 代码:
      db:
        image: mysql:8.0
        container_name: photoprism-db
        restart: unless-stopped
        environment:
          MYSQL_ROOT_PASSWORD: "YourDbRootPassword"
          MYSQL_DATABASE: "photoprism"
          MYSQL_USER: "photoprism"
          MYSQL_PASSWORD: "YourDbPassword"
        volumes:
          - "photoprism-db-data:/var/lib/mysql"
      photoprism:
        environment:
          PHOTOPRISM_DATABASE_DRIVER: "mysql"
          PHOTOPRISM_DATABASE_SERVER: "db:3306"
          PHOTOPRISM_DATABASE_NAME: "photoprism"
          PHOTOPRISM_DATABASE_USER: "photoprism"
          PHOTOPRISM_DATABASE_PASSWORD: "YourDbPassword"

    HTTPS 配置

    为了确保数据传输的安全性,可以配置 HTTPS。可以使用 Nginx 作为反向代理,配置示例如下:

    services 代码:
      nginx:
        image: nginx:latest
        container_name: photoprism-nginx
        restart: unless-stopped
        ports:
          - "443:443"
          - "80:80"
        volumes:
          - "./nginx.conf:/etc/nginx/nginx.conf"
          - "./certs:/etc/nginx/certs"

    创建一个 nginx.conf 文件,配置 Nginx 反向代理和 HTTPS 证书:

    text 代码:
        listen 80;
        server_name yourdomain.com;
        return 301 https://$host$request_uri;
    }
    
    server {
        listen 443 ssl;
        server_name yourdomain.com;
    
        ssl_certificate /etc/nginx/certs/fullchain.pem;
        ssl_certificate_key /etc/nginx/certs/privkey.pem;
    
        location / {
            proxy_pass http://photoprism:2342;
            proxy_set_header Host $host;
            proxy_set_header X-Real-IP $remote_addr;
            proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
            proxy_set_header X-Forwarded-Proto $scheme;
        }
    }

    将 yourdomain.com 替换为你的域名,并将 SSL 证书文件放到 certs 目录下。
    参考资料:
    https://github.com/photoprism/photoprism/

    声明:本文由 orangejuice00(博主)原创,依据 CC-BY-NC-SA 4.0 许可协议 授权,转载请注明出处。

    还没有人喜爱这篇文章呢

    发一条! 发一条!
    博客logo 橙子小站
    MOEICP 萌国ICP备20240440号 ICP 苏ICP备2024087715号-1 ICP 苏公网安备32048202000380号 又拍云 本站由又拍云提供CDN加速/云存储服务   异次元之旅

    🕛

    本站已运行 119 天 15 小时 38 分

    🌳

    自豪地使用 Typecho 建站,并搭配 MyLife 主题
    橙子小站. © 2024 ~ 2024.
    网站logo

    橙子小站
     
     
     
     
    壁纸