1
0

Merge QYG2297248353/appstore-1panel into pooneyy/1Panel-Appstore

This commit is contained in:
pooneyy
2025-06-14 16:56:25 +08:00
1733 changed files with 48687 additions and 0 deletions

View File

@@ -0,0 +1,180 @@
additionalProperties:
formFields:
- child:
default: ""
envKey: PANEL_DB_HOST
required: true
type: service
default: mariadb
edit: true
envKey: PANEL_DB_TYPE
labelZh: MySQL 服务 (前置检查)
labelEn: Database Service (Pre-check)
required: true
type: apps
values:
- label: MySQL
value: mysql
- label: MariaDB
value: mariadb
- label: Percona
value: percona
- default: "/home/photoprism"
edit: true
envKey: PHOTOPRISM_ROOT_PATH
labelZh: 数据持久化路径
labelEn: Data persistence path
required: true
type: text
- default: 2342
edit: true
envKey: PANEL_APP_PORT_HTTP
labelZh: WebUI 端口
labelEn: WebUI port
required: true
rule: paramPort
type: number
- default: "admin"
edit: true
envKey: PHOTOPRISM_ADMIN_USER
labelZh: 管理员用户名
labelEn: Admin username
required: true
type: text
- default: "password_random"
edit: true
envKey: PHOTOPRISM_ADMIN_PASSWORD
labelZh: 管理员密码 (8-72 字符)
labelEn: Admin password
required: true
rule: paramComplexity
random: true
type: password
- default: "password"
edit: true
envKey: PHOTOPRISM_AUTH_MODE
labelZh: 认证模式
labelEn: Authentication mode
required: true
type: select
values:
- label: 密码
value: "password"
- label: 公开
value: "public"
- default: "http://127.0.0.1:2342"
edit: true
envKey: PHOTOPRISM_SITE_URL
labelZh: 网站 URL
labelEn: Site URL
required: true
type: text
- default: "AI-Powered Photos App"
edit: true
envKey: PHOTOPRISM_SITE_CAPTION
labelZh: 网站标题
labelEn: Site caption
required: true
type: text
- default: ""
edit: true
envKey: PHOTOPRISM_SITE_DESCRIPTION
labelZh: 网站描述
labelEn: Site description
required: false
type: text
- default: ""
edit: true
envKey: PHOTOPRISM_SITE_AUTHOR
labelZh: 网站作者
labelEn: Site author
required: false
type: text
- default: "127.0.0.1:3306"
edit: true
envKey: PHOTOPRISM_DATABASE_SERVER
labelZh: 数据库 地址
labelEn: Database Server
required: true
type: text
- default: "photoprism"
edit: true
envKey: PHOTOPRISM_DATABASE_USER
labelZh: 数据库 用户名
labelEn: Database Username
required: true
type: text
- default: ""
edit: true
envKey: PHOTOPRISM_DATABASE_PASSWORD
labelZh: 数据库 密码
labelEn: Database Password
required: true
type: password
- default: "photoprism"
edit: true
envKey: PHOTOPRISM_DATABASE_NAME
labelZh: 数据库 名称
labelEn: Database Name
required: true
type: text
- default: 5000
edit: true
envKey: PHOTOPRISM_ORIGINALS_LIMIT
labelZh: 原始文件限制最大值 (MB)
labelEn: Originals limit max value (MB)
required: true
type: number
- default: "true"
edit: true
envKey: PHOTOPRISM_BACKUP_DATABASE
labelZh: 开启定时备份计划
labelEn: Enable scheduled backup plan
required: true
type: select
values:
- label:
value: "true"
- label:
value: "false"
- default: "daily"
edit: true
envKey: PHOTOPRISM_BACKUP_SCHEDULE
labelZh: 定时备份计划周期 (daily, weekly, cron)
labelEn: Scheduled backup plan cycle (daily, weekly, cron format)
required: true
type: text
- default: "software"
edit: true
envKey: PHOTOPRISM_FFMPEG_ENCODER
labelZh: 视频编码器
labelEn: Video encoder
required: true
type: select
values:
- label: 软解
value: "software"
- label: 硬解 (Intel)
value: "intel"
- label: 硬解 (nvidia)
value: "nvidia"
- label: 硬解 (apple)
value: "apple"
- label: 硬解 (raspberry)
value: "raspberry"
- label: 硬解 (vaapi)
value: "vaapi"
- default: "1920"
edit: true
envKey: PHOTOPRISM_FFMPEG_SIZE
labelZh: 视频分辨率限制
labelEn: Video resolution limit
required: true
type: text
- default: "32"
edit: true
envKey: PHOTOPRISM_FFMPEG_BITRATE
labelZh: 视频比特率限制
labelEn: Video bitrate limit
required: true
type: text

View File

@@ -0,0 +1,46 @@
networks:
1panel-network:
external: true
services:
photoprism:
image: photoprism/photoprism:250426
container_name: ${CONTAINER_NAME}
labels:
createdBy: "Apps"
restart: always
stop_grace_period: 10s
security_opt:
- seccomp:unconfined
- apparmor:unconfined
networks:
- 1panel-network
ports:
- ${PANEL_APP_PORT_HTTP}:2342
user: 1000:1000
working_dir: /photoprism
devices:
- /dev/dri:/dev/dri
# - /dev/nvidia0:/dev/nvidia0
# - /dev/nvidiactl:/dev/nvidiactl
# - /dev/nvidia-modeset:/dev/nvidia-modeset
# - /dev/nvidia-nvswitchctl:/dev/nvidia-nvswitchctl
# - /dev/nvidia-uvm:/dev/nvidia-uvm
# - /dev/nvidia-uvm-tools:/dev/nvidia-uvm-tools
# - /dev/video11:/dev/video11
env_file:
- ${GLOBAL_ENV_FILE:-/etc/1panel/envs/global.env}
- ${APP_ENV_FILE:-/etc/1panel/envs/photoprism/photoprism.env}
- ${ENV_FILE:-/etc/1panel/envs/default.env}
volumes:
- ${PHOTOPRISM_ROOT_PATH}/originals:/photoprism/originals
- ${PHOTOPRISM_ROOT_PATH}/storage:/photoprism/storage
- ${PHOTOPRISM_ROOT_PATH}/family:/photoprism/originals/family
- ${PHOTOPRISM_ROOT_PATH}/import:/photoprism/import
environment:
PHOTOPRISM_UID: 0
PHOTOPRISM_GID: 0
PHOTOPRISM_UMASK: 0022
PHOTOPRISM_PASSWORD_LENGTH: 8
PHOTOPRISM_ADMIN_USERNAME: ${PHOTOPRISM_ADMIN_USER}
PHOTOPRISM_DATABASE_DRIVER: "mysql"

View File

@@ -0,0 +1,2 @@
# copyright© 2024 XinJiang Ms Studio
ENV_FILE=.env

View File

@@ -0,0 +1,2 @@
# copyright© 2024 XinJiang Ms Studio
TZ=Asia/Shanghai

View File

@@ -0,0 +1,25 @@
PHOTOPRISM_DISABLE_TLS="false"
PHOTOPRISM_DEFAULT_TLS="true"
PHOTOPRISM_HTTP_COMPRESSION="gzip"
PHOTOPRISM_LOG_LEVEL="info"
PHOTOPRISM_READONLY="false"
PHOTOPRISM_EXPERIMENTAL="false"
PHOTOPRISM_DISABLE_CHOWN="false"
PHOTOPRISM_DISABLE_WEBDAV="false"
PHOTOPRISM_DISABLE_SETTINGS="false"
PHOTOPRISM_DISABLE_TENSORFLOW="false"
PHOTOPRISM_DISABLE_FACES="false"
PHOTOPRISM_DISABLE_CLASSIFICATION="false"
PHOTOPRISM_DISABLE_VECTORS="false"
PHOTOPRISM_DISABLE_RAW="false"
PHOTOPRISM_RAW_PRESETS="false"
PHOTOPRISM_SIDECAR_YAML="true"
PHOTOPRISM_BACKUP_ALBUMS="true"
PHOTOPRISM_BACKUP_DATABASE="true"
PHOTOPRISM_BACKUP_SCHEDULE="daily"
PHOTOPRISM_INDEX_SCHEDULE=""
PHOTOPRISM_AUTO_INDEX=300
PHOTOPRISM_AUTO_IMPORT=-1
PHOTOPRISM_DETECT_NSFW="false"
PHOTOPRISM_UPLOAD_NSFW="true"
PHOTOPRISM_INIT="https gpu ffmpeg tensorflow"

View File

@@ -0,0 +1,19 @@
#!/bin/bash
if [ -f .env ]; then
source .env
# setup-1 add default values
CURRENT_DIR=$(pwd)
sed -i '/^ENV_FILE=/d' .env
sed -i '/^GLOBAL_ENV_FILE=/d' .env
sed -i '/^APP_ENV_FILE=/d' .env
echo "ENV_FILE=${CURRENT_DIR}/.env" >> .env
echo "GLOBAL_ENV_FILE=${CURRENT_DIR}/envs/global.env" >> .env
echo "APP_ENV_FILE=${CURRENT_DIR}/envs/photoprism.env" >> .env
echo "Check Finish."
else
echo "Error: .env file not found."
fi

View File

@@ -0,0 +1,10 @@
#!/bin/bash
if [ -f .env ]; then
source .env
echo "Check Finish."
else
echo "Error: .env file not found."
fi

View File

@@ -0,0 +1,19 @@
#!/bin/bash
if [ -f .env ]; then
source .env
# setup-1 add default values
CURRENT_DIR=$(pwd)
sed -i '/^ENV_FILE=/d' .env
sed -i '/^GLOBAL_ENV_FILE=/d' .env
sed -i '/^APP_ENV_FILE=/d' .env
echo "ENV_FILE=${CURRENT_DIR}/.env" >> .env
echo "GLOBAL_ENV_FILE=${CURRENT_DIR}/envs/global.env" >> .env
echo "APP_ENV_FILE=${CURRENT_DIR}/envs/photoprism.env" >> .env
echo "Check Finish."
else
echo "Error: .env file not found."
fi