PhotoPrism

PhotoPrism

PhotoPrism

源文章连接地址

步骤2:

创建项目目录, 创建一个目录来存放 PhotoPrism 的配置文件和数据文件

cd ~/photoprism
cd ~/photoprism

步骤3:创建 Docker Compose 文件

创建一个 docker-compose.yml 文件
*** PHOTOPRISM_ADMIN_PASSWORD 替换为你自己的管理员密码

 

version: '3.5'services:photoprism:image: photoprism/photoprism:latestcontainer_name: photoprismrestart: unless-stoppedsecurity_opt:- seccomp:unconfinedports:- "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"            # 配置文件路径

步骤4:启动 PhotoPrism 服务

步骤5:访问 PhotoPrism打开浏览器,访问 http://localhost:2342http://192.168.80.134:2342/登录用户名: admin 密码: docker-compose.yml中指定的密码

 

docker-compose up -d

步骤6:上传和管理照片数据库配置默认情况下,PhotoPrism 使用 SQLite 作为数据库。如果你需要更高的性能和并发能力,可以切换到 MySQL 或 PostgreSQL。	在 docker-compose.yml 文件中添加数据库服务并修改 PhotoPrism 的环境变量services:db:image: mysql:8.0container_name: photoprism-dbrestart: unless-stoppedenvironment: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:latestcontainer_name: photoprism-nginxrestart: unless-stoppedports:- "443:443"- "80:80"volumes:- "./nginx.conf:/etc/nginx/nginx.conf"- "./certs:/etc/nginx/certs"	创建一个 nginx.conf 文件,配置 Nginx 反向代理和 HTTPS 证书:server {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 目录下