mirror of
https://github.com/QYG2297248353/appstore-1panel.git
synced 2026-06-16 01:02:14 +08:00
Processed apps directory via GitHub Actions
This commit is contained in:
@@ -9,7 +9,7 @@ services:
|
|||||||
- .env
|
- .env
|
||||||
environment:
|
environment:
|
||||||
- TZ=Asia/Shanghai
|
- TZ=Asia/Shanghai
|
||||||
image: soulter/astrbot:v4.22.1
|
image: soulter/astrbot:v4.22.2
|
||||||
labels:
|
labels:
|
||||||
createdBy: Apps
|
createdBy: Apps
|
||||||
networks:
|
networks:
|
||||||
|
|||||||
+1
-1
@@ -9,7 +9,7 @@ services:
|
|||||||
- .env
|
- .env
|
||||||
environment:
|
environment:
|
||||||
- TZ=Asia/Shanghai
|
- TZ=Asia/Shanghai
|
||||||
image: soulter/astrbot:v4.22.1
|
image: soulter/astrbot:v4.22.2
|
||||||
labels:
|
labels:
|
||||||
createdBy: Apps
|
createdBy: Apps
|
||||||
networks:
|
networks:
|
||||||
+1
-1
@@ -11,7 +11,7 @@ services:
|
|||||||
- PUID=0
|
- PUID=0
|
||||||
- PGID=0
|
- PGID=0
|
||||||
- TZ=Asia/Shanghai
|
- TZ=Asia/Shanghai
|
||||||
image: suwmlee/bonita:0.22.2
|
image: suwmlee/bonita:0.23.2
|
||||||
labels:
|
labels:
|
||||||
createdBy: Apps
|
createdBy: Apps
|
||||||
networks:
|
networks:
|
||||||
@@ -11,7 +11,7 @@ services:
|
|||||||
condition: service_healthy
|
condition: service_healthy
|
||||||
environment:
|
environment:
|
||||||
- TZ=Asia/Shanghai
|
- TZ=Asia/Shanghai
|
||||||
image: dujiaonext/admin:v0.1.5
|
image: dujiaonext/admin:v0.1.6
|
||||||
networks:
|
networks:
|
||||||
- dujiao-net
|
- dujiao-net
|
||||||
ports:
|
ports:
|
||||||
@@ -56,7 +56,7 @@ services:
|
|||||||
condition: service_healthy
|
condition: service_healthy
|
||||||
environment:
|
environment:
|
||||||
- TZ=Asia/Shanghai
|
- TZ=Asia/Shanghai
|
||||||
image: dujiaonext/user:v0.1.6
|
image: dujiaonext/user:v0.1.5
|
||||||
networks:
|
networks:
|
||||||
- dujiao-net
|
- dujiao-net
|
||||||
ports:
|
ports:
|
||||||
|
|||||||
@@ -0,0 +1,36 @@
|
|||||||
|
# Redis 服务 (前置检查) [必填]
|
||||||
|
PANEL_REDIS_TYPE=redis
|
||||||
|
|
||||||
|
# 数据持久化路径 [必填]
|
||||||
|
DUJIAONEXT_ROOT_PATH=/home/dujiaonext
|
||||||
|
|
||||||
|
# WebUI 端口 [必填]
|
||||||
|
PANEL_APP_PORT_HTTP=8080
|
||||||
|
|
||||||
|
# WebUI 后台端口 [必填]
|
||||||
|
PANEL_APP_PORT_ADMIN=8081
|
||||||
|
|
||||||
|
# API 端口 [必填]
|
||||||
|
PANEL_APP_PORT_API=8082
|
||||||
|
|
||||||
|
# 管理员用户名 [必填]
|
||||||
|
DJ_DEFAULT_ADMIN_USERNAME=admin
|
||||||
|
|
||||||
|
# 管理员密码 [必填]
|
||||||
|
DJ_DEFAULT_ADMIN_PASSWORD=
|
||||||
|
|
||||||
|
# JWT 密钥 [必填]
|
||||||
|
JWT_SECRET=efd8bd2b3ecdca06dba6b6213bf46e7a16b9045bda6420828eeeb8f7e36c755f
|
||||||
|
|
||||||
|
# 用户 JWT 密钥 [必填]
|
||||||
|
USER_JWT_SECRET=d13e38a2b2d582a4f5bcfda44ae5aa9c4bd93643ff308f0e5b45833aec28af20
|
||||||
|
|
||||||
|
# Redis 主机 [必填]
|
||||||
|
REDIS_HOST=127.0.0.1
|
||||||
|
|
||||||
|
# Redis 端口 [必填]
|
||||||
|
REDIS_PORT=6379
|
||||||
|
|
||||||
|
# Redis 连接密码
|
||||||
|
REDIS_PASSWORD=
|
||||||
|
|
||||||
@@ -0,0 +1,128 @@
|
|||||||
|
server:
|
||||||
|
host: 0.0.0.0
|
||||||
|
port: 8080
|
||||||
|
mode: debug
|
||||||
|
|
||||||
|
log:
|
||||||
|
dir: ""
|
||||||
|
filename: app.log
|
||||||
|
max_size_mb: 100
|
||||||
|
max_backups: 7
|
||||||
|
max_age_days: 30
|
||||||
|
compress: true
|
||||||
|
|
||||||
|
database:
|
||||||
|
driver: sqlite
|
||||||
|
dsn: ./db/dujiao.db?_busy_timeout=5000&_journal_mode=WAL&_synchronous=NORMAL
|
||||||
|
pool:
|
||||||
|
max_open_conns: 1
|
||||||
|
max_idle_conns: 1
|
||||||
|
conn_max_lifetime_seconds: 0
|
||||||
|
conn_max_idle_time_seconds: 0
|
||||||
|
|
||||||
|
jwt:
|
||||||
|
secret: "dev-admin-jwt-secret-change-me-please-32chars"
|
||||||
|
expire_hours: 24
|
||||||
|
|
||||||
|
user_jwt:
|
||||||
|
secret: "dev-user-jwt-secret-change-me-please-32chars"
|
||||||
|
expire_hours: 24
|
||||||
|
remember_me_expire_hours: 168
|
||||||
|
|
||||||
|
bootstrap:
|
||||||
|
default_admin_username: ""
|
||||||
|
default_admin_password: ""
|
||||||
|
|
||||||
|
redis:
|
||||||
|
enabled: true
|
||||||
|
host: 127.0.0.1
|
||||||
|
port: 6379
|
||||||
|
password: ""
|
||||||
|
db: 0
|
||||||
|
prefix: "dj"
|
||||||
|
|
||||||
|
queue:
|
||||||
|
enabled: true
|
||||||
|
host: 127.0.0.1
|
||||||
|
port: 6379
|
||||||
|
password: ""
|
||||||
|
db: 1
|
||||||
|
concurrency: 10
|
||||||
|
queues:
|
||||||
|
default: 10
|
||||||
|
critical: 5
|
||||||
|
|
||||||
|
upload:
|
||||||
|
max_size: 10485760
|
||||||
|
allowed_types:
|
||||||
|
- image/jpeg
|
||||||
|
- image/png
|
||||||
|
- image/gif
|
||||||
|
- image/webp
|
||||||
|
allowed_extensions:
|
||||||
|
- .jpg
|
||||||
|
- .jpeg
|
||||||
|
- .png
|
||||||
|
- .gif
|
||||||
|
- .webp
|
||||||
|
max_width: 4096
|
||||||
|
max_height: 4096
|
||||||
|
|
||||||
|
cors:
|
||||||
|
allowed_origins:
|
||||||
|
- "*"
|
||||||
|
allowed_methods:
|
||||||
|
- GET
|
||||||
|
- POST
|
||||||
|
- PUT
|
||||||
|
- PATCH
|
||||||
|
- DELETE
|
||||||
|
- OPTIONS
|
||||||
|
allowed_headers:
|
||||||
|
- Content-Type
|
||||||
|
- Content-Length
|
||||||
|
- Accept-Encoding
|
||||||
|
- Authorization
|
||||||
|
- Cache-Control
|
||||||
|
- X-Requested-With
|
||||||
|
- X-CSRF-Token
|
||||||
|
allow_credentials: true
|
||||||
|
max_age: 600
|
||||||
|
|
||||||
|
security:
|
||||||
|
login_rate_limit:
|
||||||
|
window_seconds: 300
|
||||||
|
max_attempts: 5
|
||||||
|
block_seconds: 900
|
||||||
|
password_policy:
|
||||||
|
min_length: 8
|
||||||
|
require_upper: true
|
||||||
|
require_lower: true
|
||||||
|
require_number: true
|
||||||
|
require_special: false
|
||||||
|
|
||||||
|
telegram_auth:
|
||||||
|
enabled: false
|
||||||
|
bot_username: ""
|
||||||
|
bot_token: ""
|
||||||
|
login_expire_seconds: 300
|
||||||
|
replay_ttl_seconds: 300
|
||||||
|
|
||||||
|
email:
|
||||||
|
enabled: true
|
||||||
|
host: smtp.xxx.com
|
||||||
|
port: 465
|
||||||
|
username: your-username
|
||||||
|
password: your-password
|
||||||
|
from: your-email
|
||||||
|
from_name: your-name
|
||||||
|
use_tls: false
|
||||||
|
use_ssl: true
|
||||||
|
verify_code:
|
||||||
|
expire_minutes: 10
|
||||||
|
send_interval_seconds: 60
|
||||||
|
max_attempts: 5
|
||||||
|
length: 6
|
||||||
|
|
||||||
|
order:
|
||||||
|
payment_expire_minutes: 15
|
||||||
@@ -0,0 +1,96 @@
|
|||||||
|
additionalProperties:
|
||||||
|
formFields:
|
||||||
|
- child:
|
||||||
|
default: ""
|
||||||
|
envKey: PANEL_REDIS_SERVICE
|
||||||
|
required: true
|
||||||
|
type: service
|
||||||
|
default: redis
|
||||||
|
envKey: PANEL_REDIS_TYPE
|
||||||
|
labelZh: Redis 服务 (前置检查)
|
||||||
|
labelEn: Redis Service (Pre-check)
|
||||||
|
required: true
|
||||||
|
type: apps
|
||||||
|
values:
|
||||||
|
- label: Redis
|
||||||
|
value: redis
|
||||||
|
- default: "/home/dujiaonext"
|
||||||
|
edit: true
|
||||||
|
envKey: DUJIAONEXT_ROOT_PATH
|
||||||
|
labelZh: 数据持久化路径
|
||||||
|
labelEn: Data persistence path
|
||||||
|
required: true
|
||||||
|
type: text
|
||||||
|
- default: 8080
|
||||||
|
edit: true
|
||||||
|
envKey: PANEL_APP_PORT_HTTP
|
||||||
|
labelZh: WebUI 端口
|
||||||
|
labelEn: WebUI port
|
||||||
|
required: true
|
||||||
|
rule: paramPort
|
||||||
|
type: number
|
||||||
|
- default: 8081
|
||||||
|
edit: true
|
||||||
|
envKey: PANEL_APP_PORT_ADMIN
|
||||||
|
labelZh: WebUI 后台端口
|
||||||
|
labelEn: WebUI Admin Port
|
||||||
|
required: true
|
||||||
|
rule: paramPort
|
||||||
|
type: number
|
||||||
|
- default: 8082
|
||||||
|
edit: true
|
||||||
|
envKey: PANEL_APP_PORT_API
|
||||||
|
labelZh: API 端口
|
||||||
|
labelEn: API Port
|
||||||
|
required: true
|
||||||
|
rule: paramPort
|
||||||
|
type: number
|
||||||
|
- default: "admin"
|
||||||
|
edit: true
|
||||||
|
envKey: DJ_DEFAULT_ADMIN_USERNAME
|
||||||
|
labelZh: 管理员用户名
|
||||||
|
labelEn: Admin Username
|
||||||
|
required: true
|
||||||
|
type: text
|
||||||
|
- default: ""
|
||||||
|
edit: true
|
||||||
|
envKey: DJ_DEFAULT_ADMIN_PASSWORD
|
||||||
|
labelZh: 管理员密码
|
||||||
|
labelEn: Admin Password
|
||||||
|
required: true
|
||||||
|
type: password
|
||||||
|
- default: "efd8bd2b3ecdca06dba6b6213bf46e7a16b9045bda6420828eeeb8f7e36c755f"
|
||||||
|
edit: true
|
||||||
|
envKey: JWT_SECRET
|
||||||
|
labelZh: JWT 密钥
|
||||||
|
labelEn: JWT Secret
|
||||||
|
required: true
|
||||||
|
type: text
|
||||||
|
- default: "d13e38a2b2d582a4f5bcfda44ae5aa9c4bd93643ff308f0e5b45833aec28af20"
|
||||||
|
edit: true
|
||||||
|
envKey: USER_JWT_SECRET
|
||||||
|
labelZh: 用户 JWT 密钥
|
||||||
|
labelEn: User JWT Secret
|
||||||
|
required: true
|
||||||
|
type: text
|
||||||
|
- default: "127.0.0.1"
|
||||||
|
edit: true
|
||||||
|
envKey: REDIS_HOST
|
||||||
|
labelZh: Redis 主机
|
||||||
|
labelEn: Redis Host
|
||||||
|
required: true
|
||||||
|
type: text
|
||||||
|
- default: 6379
|
||||||
|
edit: true
|
||||||
|
envKey: REDIS_PORT
|
||||||
|
labelZh: Redis 端口
|
||||||
|
labelEn: Redis Port
|
||||||
|
required: true
|
||||||
|
type: number
|
||||||
|
- default: ""
|
||||||
|
edit: true
|
||||||
|
envKey: REDIS_PASSWORD
|
||||||
|
labelZh: Redis 连接密码
|
||||||
|
labelEn: Redis Connection Password
|
||||||
|
required: false
|
||||||
|
type: password
|
||||||
@@ -0,0 +1,64 @@
|
|||||||
|
networks:
|
||||||
|
1panel-network:
|
||||||
|
external: true
|
||||||
|
dujiao-net:
|
||||||
|
driver: bridge
|
||||||
|
services:
|
||||||
|
dujiaonext-admin:
|
||||||
|
container_name: admin-dujiaonext
|
||||||
|
depends_on:
|
||||||
|
dujiaonext-api:
|
||||||
|
condition: service_healthy
|
||||||
|
environment:
|
||||||
|
- TZ=Asia/Shanghai
|
||||||
|
image: dujiaonext/admin:v0.1.5
|
||||||
|
networks:
|
||||||
|
- dujiao-net
|
||||||
|
ports:
|
||||||
|
- ${PANEL_APP_PORT_ADMIN}:80
|
||||||
|
restart: always
|
||||||
|
dujiaonext-api:
|
||||||
|
container_name: dujiaonext
|
||||||
|
env_file:
|
||||||
|
- ./envs/global.env
|
||||||
|
- .env
|
||||||
|
environment:
|
||||||
|
- TZ=Asia/Shanghai
|
||||||
|
- QUEUE_HOST=${REDIS_HOST:-}
|
||||||
|
- QUEUE_PORT=${REDIS_PORT:-}
|
||||||
|
- QUEUE_PASSWORD=${REDIS_PASSWORD:-}
|
||||||
|
healthcheck:
|
||||||
|
interval: 10s
|
||||||
|
retries: 10
|
||||||
|
test:
|
||||||
|
- CMD
|
||||||
|
- wget
|
||||||
|
- -qO-
|
||||||
|
- http://127.0.0.1:8080/health
|
||||||
|
timeout: 3s
|
||||||
|
image: dujiaonext/api:v0.1.7
|
||||||
|
labels:
|
||||||
|
createdBy: Apps
|
||||||
|
networks:
|
||||||
|
- dujiao-net
|
||||||
|
ports:
|
||||||
|
- ${PANEL_APP_PORT_API}:8080
|
||||||
|
restart: always
|
||||||
|
volumes:
|
||||||
|
- ${DUJIAONEXT_ROOT_PATH}/config/config.yml:/app/config.yml:ro
|
||||||
|
- ${DUJIAONEXT_ROOT_PATH}/data/db:/app/db
|
||||||
|
- ${DUJIAONEXT_ROOT_PATH}/data/uploads:/app/uploads
|
||||||
|
- ${DUJIAONEXT_ROOT_PATH}/data/logs:/app/logs
|
||||||
|
dujiaonext-user:
|
||||||
|
container_name: user-dujiaonext
|
||||||
|
depends_on:
|
||||||
|
dujiaonext-api:
|
||||||
|
condition: service_healthy
|
||||||
|
environment:
|
||||||
|
- TZ=Asia/Shanghai
|
||||||
|
image: dujiaonext/user:v0.1.7
|
||||||
|
networks:
|
||||||
|
- dujiao-net
|
||||||
|
ports:
|
||||||
|
- ${PANEL_APP_PORT_HTTP}:80
|
||||||
|
restart: always
|
||||||
@@ -0,0 +1,30 @@
|
|||||||
|
#!/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
|
||||||
|
echo "ENV_FILE=${CURRENT_DIR}/.env" >> .env
|
||||||
|
echo "GLOBAL_ENV_FILE=${CURRENT_DIR}/envs/global.env" >> .env
|
||||||
|
|
||||||
|
mkdir -p "$DUJIAONEXT_ROOT_PATH"
|
||||||
|
mkdir -p "$DUJIAONEXT_ROOT_PATH/config"
|
||||||
|
mkdir -p "$DUJIAONEXT_ROOT_PATH/data"
|
||||||
|
mkdir -p "$DUJIAONEXT_ROOT_PATH/data/db"
|
||||||
|
mkdir -p "$DUJIAONEXT_ROOT_PATH/data/uploads"
|
||||||
|
mkdir -p "$DUJIAONEXT_ROOT_PATH/data/logs"
|
||||||
|
mkdir -p "$DUJIAONEXT_ROOT_PATH/data/redis"
|
||||||
|
mkdir -p "$DUJIAONEXT_ROOT_PATH/data/postgres"
|
||||||
|
|
||||||
|
cp ./config/config.yml "$DUJIAONEXT_ROOT_PATH/config/config.yml"
|
||||||
|
|
||||||
|
chmod -R 0777 "$DUJIAONEXT_ROOT_PATH"
|
||||||
|
|
||||||
|
echo "Check Finish."
|
||||||
|
|
||||||
|
else
|
||||||
|
echo "Error: .env file not found."
|
||||||
|
fi
|
||||||
@@ -10,7 +10,7 @@ services:
|
|||||||
environment:
|
environment:
|
||||||
- TZ=Asia/Shanghai
|
- TZ=Asia/Shanghai
|
||||||
- HTTPS_PROXY=${HTTP_PROXY}
|
- HTTPS_PROXY=${HTTP_PROXY}
|
||||||
image: sn0wl1n/ech0:v4.2.2
|
image: sn0wl1n/ech0:v4.2.3
|
||||||
labels:
|
labels:
|
||||||
createdBy: Apps
|
createdBy: Apps
|
||||||
networks:
|
networks:
|
||||||
+1
-1
@@ -7,7 +7,7 @@ services:
|
|||||||
env_file:
|
env_file:
|
||||||
- ./envs/global.env
|
- ./envs/global.env
|
||||||
- .env
|
- .env
|
||||||
image: mdcng/mdc:v1.35.1
|
image: mdcng/mdc:v1.36.0
|
||||||
labels:
|
labels:
|
||||||
createdBy: Apps
|
createdBy: Apps
|
||||||
networks:
|
networks:
|
||||||
+1
-1
@@ -14,7 +14,7 @@ services:
|
|||||||
- TZ=Asia/Shanghai
|
- TZ=Asia/Shanghai
|
||||||
- DATABASE_TYPE=postgres
|
- DATABASE_TYPE=postgres
|
||||||
- DATABASE_URL=postgresql://${POSTGRES_USER}:${POSTGRES_PASSWORD}@telegram_search_pgvector:5432/${POSTGRES_DATABASE}
|
- DATABASE_URL=postgresql://${POSTGRES_USER}:${POSTGRES_PASSWORD}@telegram_search_pgvector:5432/${POSTGRES_DATABASE}
|
||||||
image: ghcr.io/groupultra/telegram-search:1.2.0
|
image: ghcr.io/groupultra/telegram-search:1.2.1
|
||||||
labels:
|
labels:
|
||||||
createdBy: Apps
|
createdBy: Apps
|
||||||
networks:
|
networks:
|
||||||
@@ -0,0 +1,10 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
if [ -f .env ]; then
|
||||||
|
source .env
|
||||||
|
|
||||||
|
echo "Check Finish."
|
||||||
|
|
||||||
|
else
|
||||||
|
echo "Error: .env file not found."
|
||||||
|
fi
|
||||||
@@ -0,0 +1,17 @@
|
|||||||
|
#!/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
|
||||||
|
echo "ENV_FILE=${CURRENT_DIR}/.env" >> .env
|
||||||
|
echo "GLOBAL_ENV_FILE=${CURRENT_DIR}/envs/global.env" >> .env
|
||||||
|
|
||||||
|
echo "Check Finish."
|
||||||
|
|
||||||
|
else
|
||||||
|
echo "Error: .env file not found."
|
||||||
|
fi
|
||||||
@@ -9,7 +9,7 @@ services:
|
|||||||
- .env
|
- .env
|
||||||
environment:
|
environment:
|
||||||
- TZ=Asia/Shanghai
|
- TZ=Asia/Shanghai
|
||||||
image: soulter/astrbot:v4.22.1
|
image: soulter/astrbot:v4.22.2
|
||||||
labels:
|
labels:
|
||||||
createdBy: Apps
|
createdBy: Apps
|
||||||
networks:
|
networks:
|
||||||
|
|||||||
@@ -9,7 +9,7 @@ services:
|
|||||||
- .env
|
- .env
|
||||||
environment:
|
environment:
|
||||||
- TZ=Asia/Shanghai
|
- TZ=Asia/Shanghai
|
||||||
image: soulter/astrbot:v4.22.1
|
image: soulter/astrbot:v4.22.2
|
||||||
labels:
|
labels:
|
||||||
createdBy: Apps
|
createdBy: Apps
|
||||||
networks:
|
networks:
|
||||||
|
|||||||
@@ -11,7 +11,7 @@ services:
|
|||||||
- PUID=0
|
- PUID=0
|
||||||
- PGID=0
|
- PGID=0
|
||||||
- TZ=Asia/Shanghai
|
- TZ=Asia/Shanghai
|
||||||
image: suwmlee/bonita:0.22.2
|
image: suwmlee/bonita:0.23.2
|
||||||
labels:
|
labels:
|
||||||
createdBy: Apps
|
createdBy: Apps
|
||||||
networks:
|
networks:
|
||||||
|
|||||||
@@ -11,7 +11,7 @@ services:
|
|||||||
condition: service_healthy
|
condition: service_healthy
|
||||||
environment:
|
environment:
|
||||||
- TZ=Asia/Shanghai
|
- TZ=Asia/Shanghai
|
||||||
image: dujiaonext/admin:v0.1.5
|
image: dujiaonext/admin:v0.1.6
|
||||||
networks:
|
networks:
|
||||||
- dujiao-net
|
- dujiao-net
|
||||||
ports:
|
ports:
|
||||||
@@ -56,7 +56,7 @@ services:
|
|||||||
condition: service_healthy
|
condition: service_healthy
|
||||||
environment:
|
environment:
|
||||||
- TZ=Asia/Shanghai
|
- TZ=Asia/Shanghai
|
||||||
image: dujiaonext/user:v0.1.6
|
image: dujiaonext/user:v0.1.5
|
||||||
networks:
|
networks:
|
||||||
- dujiao-net
|
- dujiao-net
|
||||||
ports:
|
ports:
|
||||||
|
|||||||
@@ -0,0 +1,36 @@
|
|||||||
|
# Redis 服务 (前置检查) [必填]
|
||||||
|
PANEL_REDIS_TYPE=redis
|
||||||
|
|
||||||
|
# 数据持久化路径 [必填]
|
||||||
|
DUJIAONEXT_ROOT_PATH=/home/dujiaonext
|
||||||
|
|
||||||
|
# WebUI 端口 [必填]
|
||||||
|
PANEL_APP_PORT_HTTP=8080
|
||||||
|
|
||||||
|
# WebUI 后台端口 [必填]
|
||||||
|
PANEL_APP_PORT_ADMIN=8081
|
||||||
|
|
||||||
|
# API 端口 [必填]
|
||||||
|
PANEL_APP_PORT_API=8082
|
||||||
|
|
||||||
|
# 管理员用户名 [必填]
|
||||||
|
DJ_DEFAULT_ADMIN_USERNAME=admin
|
||||||
|
|
||||||
|
# 管理员密码 [必填]
|
||||||
|
DJ_DEFAULT_ADMIN_PASSWORD=
|
||||||
|
|
||||||
|
# JWT 密钥 [必填]
|
||||||
|
JWT_SECRET=efd8bd2b3ecdca06dba6b6213bf46e7a16b9045bda6420828eeeb8f7e36c755f
|
||||||
|
|
||||||
|
# 用户 JWT 密钥 [必填]
|
||||||
|
USER_JWT_SECRET=d13e38a2b2d582a4f5bcfda44ae5aa9c4bd93643ff308f0e5b45833aec28af20
|
||||||
|
|
||||||
|
# Redis 主机 [必填]
|
||||||
|
REDIS_HOST=127.0.0.1
|
||||||
|
|
||||||
|
# Redis 端口 [必填]
|
||||||
|
REDIS_PORT=6379
|
||||||
|
|
||||||
|
# Redis 连接密码
|
||||||
|
REDIS_PASSWORD=
|
||||||
|
|
||||||
@@ -0,0 +1,128 @@
|
|||||||
|
server:
|
||||||
|
host: 0.0.0.0
|
||||||
|
port: 8080
|
||||||
|
mode: debug
|
||||||
|
|
||||||
|
log:
|
||||||
|
dir: ""
|
||||||
|
filename: app.log
|
||||||
|
max_size_mb: 100
|
||||||
|
max_backups: 7
|
||||||
|
max_age_days: 30
|
||||||
|
compress: true
|
||||||
|
|
||||||
|
database:
|
||||||
|
driver: sqlite
|
||||||
|
dsn: ./db/dujiao.db?_busy_timeout=5000&_journal_mode=WAL&_synchronous=NORMAL
|
||||||
|
pool:
|
||||||
|
max_open_conns: 1
|
||||||
|
max_idle_conns: 1
|
||||||
|
conn_max_lifetime_seconds: 0
|
||||||
|
conn_max_idle_time_seconds: 0
|
||||||
|
|
||||||
|
jwt:
|
||||||
|
secret: "dev-admin-jwt-secret-change-me-please-32chars"
|
||||||
|
expire_hours: 24
|
||||||
|
|
||||||
|
user_jwt:
|
||||||
|
secret: "dev-user-jwt-secret-change-me-please-32chars"
|
||||||
|
expire_hours: 24
|
||||||
|
remember_me_expire_hours: 168
|
||||||
|
|
||||||
|
bootstrap:
|
||||||
|
default_admin_username: ""
|
||||||
|
default_admin_password: ""
|
||||||
|
|
||||||
|
redis:
|
||||||
|
enabled: true
|
||||||
|
host: 127.0.0.1
|
||||||
|
port: 6379
|
||||||
|
password: ""
|
||||||
|
db: 0
|
||||||
|
prefix: "dj"
|
||||||
|
|
||||||
|
queue:
|
||||||
|
enabled: true
|
||||||
|
host: 127.0.0.1
|
||||||
|
port: 6379
|
||||||
|
password: ""
|
||||||
|
db: 1
|
||||||
|
concurrency: 10
|
||||||
|
queues:
|
||||||
|
default: 10
|
||||||
|
critical: 5
|
||||||
|
|
||||||
|
upload:
|
||||||
|
max_size: 10485760
|
||||||
|
allowed_types:
|
||||||
|
- image/jpeg
|
||||||
|
- image/png
|
||||||
|
- image/gif
|
||||||
|
- image/webp
|
||||||
|
allowed_extensions:
|
||||||
|
- .jpg
|
||||||
|
- .jpeg
|
||||||
|
- .png
|
||||||
|
- .gif
|
||||||
|
- .webp
|
||||||
|
max_width: 4096
|
||||||
|
max_height: 4096
|
||||||
|
|
||||||
|
cors:
|
||||||
|
allowed_origins:
|
||||||
|
- "*"
|
||||||
|
allowed_methods:
|
||||||
|
- GET
|
||||||
|
- POST
|
||||||
|
- PUT
|
||||||
|
- PATCH
|
||||||
|
- DELETE
|
||||||
|
- OPTIONS
|
||||||
|
allowed_headers:
|
||||||
|
- Content-Type
|
||||||
|
- Content-Length
|
||||||
|
- Accept-Encoding
|
||||||
|
- Authorization
|
||||||
|
- Cache-Control
|
||||||
|
- X-Requested-With
|
||||||
|
- X-CSRF-Token
|
||||||
|
allow_credentials: true
|
||||||
|
max_age: 600
|
||||||
|
|
||||||
|
security:
|
||||||
|
login_rate_limit:
|
||||||
|
window_seconds: 300
|
||||||
|
max_attempts: 5
|
||||||
|
block_seconds: 900
|
||||||
|
password_policy:
|
||||||
|
min_length: 8
|
||||||
|
require_upper: true
|
||||||
|
require_lower: true
|
||||||
|
require_number: true
|
||||||
|
require_special: false
|
||||||
|
|
||||||
|
telegram_auth:
|
||||||
|
enabled: false
|
||||||
|
bot_username: ""
|
||||||
|
bot_token: ""
|
||||||
|
login_expire_seconds: 300
|
||||||
|
replay_ttl_seconds: 300
|
||||||
|
|
||||||
|
email:
|
||||||
|
enabled: true
|
||||||
|
host: smtp.xxx.com
|
||||||
|
port: 465
|
||||||
|
username: your-username
|
||||||
|
password: your-password
|
||||||
|
from: your-email
|
||||||
|
from_name: your-name
|
||||||
|
use_tls: false
|
||||||
|
use_ssl: true
|
||||||
|
verify_code:
|
||||||
|
expire_minutes: 10
|
||||||
|
send_interval_seconds: 60
|
||||||
|
max_attempts: 5
|
||||||
|
length: 6
|
||||||
|
|
||||||
|
order:
|
||||||
|
payment_expire_minutes: 15
|
||||||
@@ -0,0 +1,64 @@
|
|||||||
|
networks:
|
||||||
|
1panel-network:
|
||||||
|
external: true
|
||||||
|
dujiao-net:
|
||||||
|
driver: bridge
|
||||||
|
services:
|
||||||
|
dujiaonext-admin:
|
||||||
|
container_name: admin-dujiaonext
|
||||||
|
depends_on:
|
||||||
|
dujiaonext-api:
|
||||||
|
condition: service_healthy
|
||||||
|
environment:
|
||||||
|
- TZ=Asia/Shanghai
|
||||||
|
image: dujiaonext/admin:v0.1.5
|
||||||
|
networks:
|
||||||
|
- dujiao-net
|
||||||
|
ports:
|
||||||
|
- ${PANEL_APP_PORT_ADMIN}:80
|
||||||
|
restart: always
|
||||||
|
dujiaonext-api:
|
||||||
|
container_name: dujiaonext
|
||||||
|
env_file:
|
||||||
|
- ./envs/global.env
|
||||||
|
- .env
|
||||||
|
environment:
|
||||||
|
- TZ=Asia/Shanghai
|
||||||
|
- QUEUE_HOST=${REDIS_HOST:-}
|
||||||
|
- QUEUE_PORT=${REDIS_PORT:-}
|
||||||
|
- QUEUE_PASSWORD=${REDIS_PASSWORD:-}
|
||||||
|
healthcheck:
|
||||||
|
interval: 10s
|
||||||
|
retries: 10
|
||||||
|
test:
|
||||||
|
- CMD
|
||||||
|
- wget
|
||||||
|
- -qO-
|
||||||
|
- http://127.0.0.1:8080/health
|
||||||
|
timeout: 3s
|
||||||
|
image: dujiaonext/api:v0.1.7
|
||||||
|
labels:
|
||||||
|
createdBy: Apps
|
||||||
|
networks:
|
||||||
|
- dujiao-net
|
||||||
|
ports:
|
||||||
|
- ${PANEL_APP_PORT_API}:8080
|
||||||
|
restart: always
|
||||||
|
volumes:
|
||||||
|
- ${DUJIAONEXT_ROOT_PATH}/config/config.yml:/app/config.yml:ro
|
||||||
|
- ${DUJIAONEXT_ROOT_PATH}/data/db:/app/db
|
||||||
|
- ${DUJIAONEXT_ROOT_PATH}/data/uploads:/app/uploads
|
||||||
|
- ${DUJIAONEXT_ROOT_PATH}/data/logs:/app/logs
|
||||||
|
dujiaonext-user:
|
||||||
|
container_name: user-dujiaonext
|
||||||
|
depends_on:
|
||||||
|
dujiaonext-api:
|
||||||
|
condition: service_healthy
|
||||||
|
environment:
|
||||||
|
- TZ=Asia/Shanghai
|
||||||
|
image: dujiaonext/user:v0.1.7
|
||||||
|
networks:
|
||||||
|
- dujiao-net
|
||||||
|
ports:
|
||||||
|
- ${PANEL_APP_PORT_HTTP}:80
|
||||||
|
restart: always
|
||||||
@@ -0,0 +1,2 @@
|
|||||||
|
# copyright© 2024 XinJiang Ms Studio
|
||||||
|
ENV_FILE=.env
|
||||||
@@ -0,0 +1,2 @@
|
|||||||
|
# copyright© 2024 XinJiang Ms Studio
|
||||||
|
TZ=Asia/Shanghai
|
||||||
@@ -10,7 +10,7 @@ services:
|
|||||||
environment:
|
environment:
|
||||||
- TZ=Asia/Shanghai
|
- TZ=Asia/Shanghai
|
||||||
- HTTPS_PROXY=${HTTP_PROXY}
|
- HTTPS_PROXY=${HTTP_PROXY}
|
||||||
image: sn0wl1n/ech0:v4.2.2
|
image: sn0wl1n/ech0:v3.1.4
|
||||||
labels:
|
labels:
|
||||||
createdBy: Apps
|
createdBy: Apps
|
||||||
networks:
|
networks:
|
||||||
|
|||||||
@@ -10,7 +10,7 @@ services:
|
|||||||
environment:
|
environment:
|
||||||
- TZ=Asia/Shanghai
|
- TZ=Asia/Shanghai
|
||||||
- HTTPS_PROXY=${HTTP_PROXY}
|
- HTTPS_PROXY=${HTTP_PROXY}
|
||||||
image: sn0wl1n/ech0:v3.1.4
|
image: sn0wl1n/ech0:v4.2.3
|
||||||
labels:
|
labels:
|
||||||
createdBy: Apps
|
createdBy: Apps
|
||||||
networks:
|
networks:
|
||||||
@@ -0,0 +1,2 @@
|
|||||||
|
# copyright© 2024 XinJiang Ms Studio
|
||||||
|
ENV_FILE=.env
|
||||||
@@ -0,0 +1,2 @@
|
|||||||
|
# copyright© 2024 XinJiang Ms Studio
|
||||||
|
TZ=Asia/Shanghai
|
||||||
@@ -7,7 +7,7 @@ services:
|
|||||||
env_file:
|
env_file:
|
||||||
- ./envs/global.env
|
- ./envs/global.env
|
||||||
- .env
|
- .env
|
||||||
image: mdcng/mdc:v1.35.1
|
image: mdcng/mdc:v1.36.0
|
||||||
labels:
|
labels:
|
||||||
createdBy: Apps
|
createdBy: Apps
|
||||||
networks:
|
networks:
|
||||||
|
|||||||
@@ -14,7 +14,7 @@ services:
|
|||||||
- TZ=Asia/Shanghai
|
- TZ=Asia/Shanghai
|
||||||
- DATABASE_TYPE=postgres
|
- DATABASE_TYPE=postgres
|
||||||
- DATABASE_URL=postgresql://${POSTGRES_USER}:${POSTGRES_PASSWORD}@telegram_search_pgvector:5432/${POSTGRES_DATABASE}
|
- DATABASE_URL=postgresql://${POSTGRES_USER}:${POSTGRES_PASSWORD}@telegram_search_pgvector:5432/${POSTGRES_DATABASE}
|
||||||
image: ghcr.io/groupultra/telegram-search:1.2.0
|
image: ghcr.io/groupultra/telegram-search:1.2.1
|
||||||
labels:
|
labels:
|
||||||
createdBy: Apps
|
createdBy: Apps
|
||||||
networks:
|
networks:
|
||||||
|
|||||||
Reference in New Issue
Block a user