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:
+1
-1
@@ -14,7 +14,7 @@ services:
|
||||
- verificationCodeTimeout=10
|
||||
- appname=casdoor
|
||||
- authState=casdoor
|
||||
image: casbin/casdoor:2.246.0
|
||||
image: casbin/casdoor:2.246.1
|
||||
labels:
|
||||
createdBy: Apps
|
||||
networks:
|
||||
@@ -0,0 +1,6 @@
|
||||
# 数据持久化路径 [必填]
|
||||
JACKETT_ROOT_PATH=/home/jackett
|
||||
|
||||
# WebUI 端口 [必填]
|
||||
PANEL_APP_PORT_HTTP=9117
|
||||
|
||||
@@ -0,0 +1,17 @@
|
||||
additionalProperties:
|
||||
formFields:
|
||||
- default: "/home/jackett"
|
||||
edit: true
|
||||
envKey: JACKETT_ROOT_PATH
|
||||
labelZh: 数据持久化路径
|
||||
labelEn: Data persistence path
|
||||
required: true
|
||||
type: text
|
||||
- default: 9117
|
||||
edit: true
|
||||
envKey: PANEL_APP_PORT_HTTP
|
||||
labelZh: WebUI 端口
|
||||
labelEn: WebUI port
|
||||
required: true
|
||||
rule: paramPort
|
||||
type: number
|
||||
@@ -0,0 +1,24 @@
|
||||
networks:
|
||||
1panel-network:
|
||||
external: true
|
||||
services:
|
||||
jackett:
|
||||
container_name: jackett
|
||||
env_file:
|
||||
- ./envs/global.env
|
||||
- .env
|
||||
environment:
|
||||
- TZ=Asia/Shanghai
|
||||
- PUID=1000
|
||||
- PGID=1000
|
||||
image: linuxserver/jackett:0.24.850
|
||||
labels:
|
||||
createdBy: Apps
|
||||
networks:
|
||||
- 1panel-network
|
||||
ports:
|
||||
- ${PANEL_APP_PORT_HTTP}:9117
|
||||
restart: always
|
||||
volumes:
|
||||
- ${JACKETT_ROOT_PATH}/config:/config
|
||||
- ${JACKETT_ROOT_PATH}/downloads:/downloads
|
||||
@@ -0,0 +1,24 @@
|
||||
#!/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
|
||||
|
||||
# setup-2 create dir
|
||||
mkdir -p "$JACKETT_ROOT_PATH"
|
||||
mkdir -p "$JACKETT_ROOT_PATH/config"
|
||||
mkdir -p "$JACKETT_ROOT_PATH/downloads"
|
||||
|
||||
chown -R 1000:1000 "$JACKETT_ROOT_PATH"
|
||||
|
||||
echo "Check Finish."
|
||||
|
||||
else
|
||||
echo "Error: .env file not found."
|
||||
fi
|
||||
@@ -0,0 +1,16 @@
|
||||
# Jackett
|
||||
|
||||
支持您喜爱的种子追踪器 API
|
||||
|
||||

|
||||
|
||||

|
||||
|
||||
## 简介
|
||||
|
||||
聚合索引器,支持您喜爱的种子追踪器 API
|
||||
|
||||
---
|
||||
|
||||

|
||||

|
||||
@@ -0,0 +1,16 @@
|
||||
additionalProperties:
|
||||
key: jackett
|
||||
name: Jackett
|
||||
tags:
|
||||
- WebSite
|
||||
- Local
|
||||
shortDescZh: API支持您最喜爱的种子追踪器
|
||||
shortDescEn: API Support for your favorite torrent trackers
|
||||
type: website
|
||||
crossVersionUpdate: true
|
||||
limit: 0
|
||||
website: https://github.com/Jackett/Jackett/
|
||||
github: https://github.com/Jackett/Jackett/
|
||||
document: https://github.com/Jackett/Jackett/
|
||||
architectures:
|
||||
- amd64
|
||||
Binary file not shown.
|
After Width: | Height: | Size: 4.3 KiB |
+1
-1
@@ -11,7 +11,7 @@ services:
|
||||
- PUID=0
|
||||
- PGID=0
|
||||
- TZ=Asia/Shanghai
|
||||
image: ghostchu/peerbanhelper:v9.2.4
|
||||
image: ghostchu/peerbanhelper:v9.2.5
|
||||
labels:
|
||||
createdBy: Apps
|
||||
network_mode: ${NETWORK_MODE:-host}
|
||||
@@ -0,0 +1,2 @@
|
||||
# copyright© 2024 XinJiang Ms Studio
|
||||
ENV_FILE=.env
|
||||
@@ -0,0 +1,2 @@
|
||||
# copyright© 2024 XinJiang Ms Studio
|
||||
TZ=Asia/Shanghai
|
||||
@@ -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
|
||||
@@ -0,0 +1,94 @@
|
||||
# Rust Srec
|
||||
|
||||
自动化直播录制解决方案 (Stream Rec 迭代版)
|
||||
|
||||
基于 Rust 构建的高性能多平台直播录制系统
|
||||
|
||||

|
||||
|
||||

|
||||
|
||||
## 安装说明
|
||||
|
||||
### JWT 签名密钥 生成
|
||||
|
||||
```shell
|
||||
openssl rand -hex 32
|
||||
```
|
||||
|
||||
### 会话密钥 生成
|
||||
|
||||
```shell
|
||||
openssl rand -hex 32
|
||||
```
|
||||
|
||||
### 持久化路径
|
||||
|
||||
目前使用 `应用持久化路径` 与 `数据持久化路径` 配置,分别用于存储应用数据和录制数据。
|
||||
|
||||
+ `数据持久化路径`: 是指录制数据存放的路径,占用空间较多,请自行配置。
|
||||
+ `应用持久化路径`: 存放应用配置文件,如:JWT 签名密钥、会话密钥、数据库配置、日志配置、DAG 配置等。
|
||||
|
||||
## 特性
|
||||
|
||||
### 🎬 多平台支持
|
||||
|
||||
支持 Bilibili、抖音、斗鱼、虎牙、Twitch、TikTok 等平台
|
||||
|
||||
### ⚡ 高性能
|
||||
|
||||
Rust 构建,高效且资源占用低
|
||||
|
||||
### 🔄 DAG 管道
|
||||
|
||||
强大的后处理工作流(有向无环图)
|
||||
|
||||
### 🎯 灵活配置
|
||||
|
||||
4 层配置层级,精细化控制
|
||||
|
||||
### 💬 弹幕支持
|
||||
|
||||
同步录制弹幕
|
||||
|
||||
### 🐳 容器化部署
|
||||
|
||||
支持 Docker 和 docker-compose 快速部署
|
||||
|
||||
### 📅 自定义录制计划
|
||||
|
||||
定时录制,自动管理文件名,便于组织归档
|
||||
|
||||
### 🔧 FLV 修复
|
||||
|
||||
自动修复损坏的 FLV 流,包括时间戳校正和元数据修复
|
||||
|
||||
## 直播平台支持列表
|
||||
|
||||
| 平台 | URL 格式 | 协议 | 弹幕 |
|
||||
|:----------------------------------------------------------------------------------------|:------------------------------------------------------|:--------|:---|
|
||||
| [Bilibili](https://hua0512.github.io/rust-srec/zh/platforms/bilibili.html) | `live.bilibili.com/{room_id}` | FLV/HLS | ✅ |
|
||||
| [抖音](https://hua0512.github.io/rust-srec/zh/platforms/douyin.html) | `live.douyin.com/{room_id}` | FLV/HLS | ✅ |
|
||||
| [斗鱼](https://hua0512.github.io/rust-srec/zh/platforms/douyu.html) | `douyu.com/{room_id}` | FLV | ✅ |
|
||||
| [虎牙](https://hua0512.github.io/rust-srec/zh/platforms/huya.html) | `huya.com/{room_id}` | FLV/HLS | ✅ |
|
||||
| [AcFun](https://hua0512.github.io/rust-srec/zh/platforms/others.html#acfun) | `acfun.cn/live/{room_id}` | HLS | ❌ |
|
||||
| [PandaTV](https://hua0512.github.io/rust-srec/zh/platforms/others.html#pandatv) | `pandalive.co.kr/play/{id}` | HLS | ❌ |
|
||||
| [小红书](https://hua0512.github.io/rust-srec/zh/platforms/others.html#redbook-小红书) | `xiaohongshu.com/user/profile/{id} or xhs.link/{id}` | HLS | ❌ |
|
||||
| [微博](https://hua0512.github.io/rust-srec/zh/platforms/others.html#weibo) | `weibo.com/u/{uid} or weibo.com/l/wblive/p/show/{id}` | HLS | ❌ |
|
||||
| [Twitch](https://hua0512.github.io/rust-srec/zh/platforms/twitch.html) | `twitch.tv/{channel}` | HLS | ✅ |
|
||||
| [TikTok](https://hua0512.github.io/rust-srec/zh/platforms/others.html#tiktok) | `tiktok.com/@{user}/live` | HLS | ❌ |
|
||||
| [Twitcasting](https://hua0512.github.io/rust-srec/zh/platforms/others.html#twitcasting) | `twitcasting.tv/{user}` | HLS | ✅ |
|
||||
| [Picarto](https://hua0512.github.io/rust-srec/zh/platforms/others.html#picarto) | `picarto.tv/{user}` | HLS/MP4 | ❌ |
|
||||
|
||||
## 安装说明
|
||||
|
||||
> 默认账户
|
||||
>
|
||||
> 用户名:admin
|
||||
>
|
||||
> 密码:admin123! 或 `登录密码 (初始化)` 配置
|
||||
|
||||
---
|
||||
|
||||

|
||||

|
||||
@@ -0,0 +1,18 @@
|
||||
additionalProperties:
|
||||
key: rust-srec
|
||||
name: Rust Srec
|
||||
tags:
|
||||
- WebSite
|
||||
- Tool
|
||||
- Local
|
||||
shortDescZh: 自动流媒体录制工具
|
||||
shortDescEn: Automatic streaming record tool
|
||||
type: website
|
||||
crossVersionUpdate: true
|
||||
limit: 0
|
||||
website: https://hua0512.github.io/rust-srec/
|
||||
github: https://github.com/hua0512/rust-srec
|
||||
document: https://hua0512.github.io/rust-srec/
|
||||
architectures:
|
||||
- amd64
|
||||
- arm64
|
||||
@@ -0,0 +1,24 @@
|
||||
# 应用持久化路径 [必填]
|
||||
RUST_REC_ROOT_PATH=/home/rust-rec
|
||||
|
||||
# 数据持久化路径 [必填]
|
||||
RUST_REC_DATA_ROOT_PATH=/home/rust-rec
|
||||
|
||||
# WebUI 端口 [必填]
|
||||
PANEL_APP_PORT_HTTP=8088
|
||||
|
||||
# API 端口 [必填]
|
||||
PANEL_APP_PORT_API=8080
|
||||
|
||||
# JWT 签名密钥 [必填]
|
||||
JWT_SECRET=
|
||||
|
||||
# 会话密钥 [必填]
|
||||
SESSION_SECRET=
|
||||
|
||||
# 网络代理
|
||||
HTTP_PROXY=
|
||||
|
||||
# 忽略代理 [必填]
|
||||
NO_PROXY=localhost,127.0.0.1,rust-srec-backend
|
||||
|
||||
@@ -0,0 +1,60 @@
|
||||
additionalProperties:
|
||||
formFields:
|
||||
- default: "/home/rust-rec"
|
||||
edit: true
|
||||
envKey: RUST_REC_ROOT_PATH
|
||||
labelZh: 应用持久化路径
|
||||
labelEn: Data persistence path
|
||||
required: true
|
||||
type: text
|
||||
- default: "/home/rust-rec"
|
||||
edit: true
|
||||
envKey: RUST_REC_DATA_ROOT_PATH
|
||||
labelZh: 数据持久化路径
|
||||
labelEn: Data persistence path
|
||||
required: true
|
||||
type: text
|
||||
- default: 8088
|
||||
edit: true
|
||||
envKey: PANEL_APP_PORT_HTTP
|
||||
labelZh: WebUI 端口
|
||||
labelEn: WebUI port
|
||||
required: true
|
||||
rule: paramPort
|
||||
type: number
|
||||
- default: 8080
|
||||
edit: true
|
||||
envKey: PANEL_APP_PORT_API
|
||||
labelZh: API 端口
|
||||
labelEn: API port
|
||||
required: true
|
||||
rule: paramPort
|
||||
type: number
|
||||
- default: ""
|
||||
edit: true
|
||||
envKey: JWT_SECRET
|
||||
labelZh: JWT 签名密钥
|
||||
labelEn: JWT Secret
|
||||
required: true
|
||||
type: text
|
||||
- default: ""
|
||||
edit: true
|
||||
envKey: SESSION_SECRET
|
||||
labelZh: 会话密钥
|
||||
labelEn: Session Secret
|
||||
required: true
|
||||
type: text
|
||||
- default: ""
|
||||
edit: true
|
||||
envKey: HTTP_PROXY
|
||||
labelZh: 网络代理
|
||||
labelEn: Network Proxy
|
||||
required: false
|
||||
type: text
|
||||
- default: "localhost,127.0.0.1,rust-srec-backend"
|
||||
edit: true
|
||||
envKey: NO_PROXY
|
||||
labelZh: 忽略代理
|
||||
labelEn: Ignore Proxy
|
||||
required: true
|
||||
type: text
|
||||
@@ -0,0 +1,72 @@
|
||||
networks:
|
||||
1panel-network:
|
||||
external: true
|
||||
services:
|
||||
rust-rec-frontend:
|
||||
container_name: rust-srec
|
||||
depends_on:
|
||||
rust-srec-backend:
|
||||
condition: service_healthy
|
||||
env_file:
|
||||
- ./envs/global.env
|
||||
- .env
|
||||
environment:
|
||||
- TZ=Asia/Shanghai
|
||||
- BACKEND_URL=${BACKEND_URL:-http://rust-srec-backend:8080}
|
||||
- COOKIE_SECURE=${COOKIE_SECURE:-}
|
||||
image: ghcr.io/hua0512/rust-srec-frontend:dev
|
||||
labels:
|
||||
createdBy: Apps
|
||||
logging:
|
||||
driver: json-file
|
||||
options:
|
||||
max-file: '3'
|
||||
max-size: 50m
|
||||
networks:
|
||||
- 1panel-network
|
||||
ports:
|
||||
- ${PANEL_APP_PORT_HTTP}:80
|
||||
restart: always
|
||||
rust-srec-backend:
|
||||
container_name: backend-rust-srec
|
||||
env_file:
|
||||
- ./envs/global.env
|
||||
- .env
|
||||
environment:
|
||||
- TZ=Asia/Shanghai
|
||||
- RUST_LOG=${RUST_LOG:-info}
|
||||
- DATABASE_URL=${DATABASE_URL:-sqlite:///app/data/rust-srec.db}
|
||||
- API_PORT=8080
|
||||
- API_BIND_ADDRESS=0.0.0.0
|
||||
- ACCESS_TOKEN_EXPIRATION_SECS=${ACCESS_TOKEN_EXPIRATION_SECS:-3600}
|
||||
- REFRESH_TOKEN_EXPIRATION_SECS=${REFRESH_TOKEN_EXPIRATION_SECS:-604800}
|
||||
- MIN_PASSWORD_LENGTH=${MIN_PASSWORD_LENGTH:-8}
|
||||
- HTTP_PROXY=${HTTP_PROXY:-}
|
||||
- HTTPS_PROXY=${HTTP_PROXY:-}
|
||||
healthcheck:
|
||||
interval: 30s
|
||||
retries: 3
|
||||
start_period: 10s
|
||||
test:
|
||||
- CMD
|
||||
- curl
|
||||
- -f
|
||||
- http://localhost:8080/api/health/live
|
||||
timeout: 10s
|
||||
image: ghcr.io/hua0512/rust-srec:dev
|
||||
logging:
|
||||
driver: json-file
|
||||
options:
|
||||
max-file: '5'
|
||||
max-size: 100m
|
||||
networks:
|
||||
- 1panel-network
|
||||
ports:
|
||||
- ${PANEL_APP_PORT_API}:8080
|
||||
restart: always
|
||||
volumes:
|
||||
- ${RUST_REC_DATA_ROOT_PATH}/data:/app/data
|
||||
- ${RUST_REC_DATA_ROOT_PATH}/output:/app/output
|
||||
- ${RUST_REC_ROOT_PATH}/config:/app/config
|
||||
- ${RUST_REC_ROOT_PATH}/logs:/app/logs
|
||||
- ${RUST_REC_ROOT_PATH}/tmp:/tmp
|
||||
@@ -0,0 +1,8 @@
|
||||
# copyright© 2024 XinJiang Ms Studio
|
||||
ENV_FILE=.env
|
||||
DATA_DIR=/app/data
|
||||
CONFIG_DIR=/app/config
|
||||
OUTPUT_DIR=/app/output
|
||||
LOG_DIR=/app/logs
|
||||
JWT_ISSUER=rust-srec
|
||||
JWT_AUDIENCE=rust-srec-api
|
||||
@@ -0,0 +1,2 @@
|
||||
# copyright© 2024 XinJiang Ms Studio
|
||||
TZ=Asia/Shanghai
|
||||
@@ -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
|
||||
@@ -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
|
||||
Binary file not shown.
|
After Width: | Height: | Size: 9.4 KiB |
@@ -2,7 +2,7 @@
|
||||
|
||||
简单而强大的CI/CD引擎,具有很强的可扩展性
|
||||
|
||||

|
||||

|
||||
|
||||

|
||||
|
||||
|
||||
@@ -22,6 +22,9 @@ WOODPECKER_ADMIN=
|
||||
# 组织列表
|
||||
WOODPECKER_ORGS=
|
||||
|
||||
# 特权插件
|
||||
WOODPECKER_PLUGINS_PRIVILEGED=
|
||||
|
||||
# 登录过期时间 [必填]
|
||||
WOODPECKER_SESSION_EXPIRES=72h
|
||||
|
||||
|
||||
@@ -63,6 +63,13 @@ additionalProperties:
|
||||
labelEn: Organization list
|
||||
required: false
|
||||
type: text
|
||||
- default: ""
|
||||
edit: true
|
||||
envKey: WOODPECKER_PLUGINS_PRIVILEGED
|
||||
labelZh: 特权插件
|
||||
labelEn: Privileged plugins
|
||||
required: false
|
||||
type: text
|
||||
- default: "72h"
|
||||
edit: true
|
||||
envKey: WOODPECKER_SESSION_EXPIRES
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
|
||||
简单而强大的CI/CD引擎,具有很强的可扩展性
|
||||
|
||||

|
||||

|
||||
|
||||

|
||||
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
|
||||
简单而强大的CI/CD引擎,具有很强的可扩展性
|
||||
|
||||

|
||||

|
||||
|
||||

|
||||
|
||||
|
||||
@@ -14,7 +14,7 @@ services:
|
||||
- verificationCodeTimeout=10
|
||||
- appname=casdoor
|
||||
- authState=casdoor
|
||||
image: casbin/casdoor:2.246.0
|
||||
image: casbin/casdoor:2.246.1
|
||||
labels:
|
||||
createdBy: Apps
|
||||
networks:
|
||||
|
||||
@@ -0,0 +1,6 @@
|
||||
# 数据持久化路径 [必填]
|
||||
JACKETT_ROOT_PATH=/home/jackett
|
||||
|
||||
# WebUI 端口 [必填]
|
||||
PANEL_APP_PORT_HTTP=9117
|
||||
|
||||
@@ -0,0 +1,24 @@
|
||||
networks:
|
||||
1panel-network:
|
||||
external: true
|
||||
services:
|
||||
jackett:
|
||||
container_name: jackett
|
||||
env_file:
|
||||
- ./envs/global.env
|
||||
- .env
|
||||
environment:
|
||||
- TZ=Asia/Shanghai
|
||||
- PUID=1000
|
||||
- PGID=1000
|
||||
image: linuxserver/jackett:0.24.850
|
||||
labels:
|
||||
createdBy: Apps
|
||||
networks:
|
||||
- 1panel-network
|
||||
ports:
|
||||
- ${PANEL_APP_PORT_HTTP}:9117
|
||||
restart: always
|
||||
volumes:
|
||||
- ${JACKETT_ROOT_PATH}/config:/config
|
||||
- ${JACKETT_ROOT_PATH}/downloads:/downloads
|
||||
@@ -0,0 +1,2 @@
|
||||
# copyright© 2024 XinJiang Ms Studio
|
||||
ENV_FILE=.env
|
||||
@@ -0,0 +1,2 @@
|
||||
# copyright© 2024 XinJiang Ms Studio
|
||||
TZ=Asia/Shanghai
|
||||
@@ -11,7 +11,7 @@ services:
|
||||
- PUID=0
|
||||
- PGID=0
|
||||
- TZ=Asia/Shanghai
|
||||
image: ghostchu/peerbanhelper:v9.2.4
|
||||
image: ghostchu/peerbanhelper:v9.2.5
|
||||
labels:
|
||||
createdBy: Apps
|
||||
network_mode: ${NETWORK_MODE:-host}
|
||||
|
||||
@@ -0,0 +1,24 @@
|
||||
# 应用持久化路径 [必填]
|
||||
RUST_REC_ROOT_PATH=/home/rust-rec
|
||||
|
||||
# 数据持久化路径 [必填]
|
||||
RUST_REC_DATA_ROOT_PATH=/home/rust-rec
|
||||
|
||||
# WebUI 端口 [必填]
|
||||
PANEL_APP_PORT_HTTP=8088
|
||||
|
||||
# API 端口 [必填]
|
||||
PANEL_APP_PORT_API=8080
|
||||
|
||||
# JWT 签名密钥 [必填]
|
||||
JWT_SECRET=
|
||||
|
||||
# 会话密钥 [必填]
|
||||
SESSION_SECRET=
|
||||
|
||||
# 网络代理
|
||||
HTTP_PROXY=
|
||||
|
||||
# 忽略代理 [必填]
|
||||
NO_PROXY=localhost,127.0.0.1,rust-srec-backend
|
||||
|
||||
@@ -0,0 +1,72 @@
|
||||
networks:
|
||||
1panel-network:
|
||||
external: true
|
||||
services:
|
||||
rust-rec-frontend:
|
||||
container_name: rust-srec
|
||||
depends_on:
|
||||
rust-srec-backend:
|
||||
condition: service_healthy
|
||||
env_file:
|
||||
- ./envs/global.env
|
||||
- .env
|
||||
environment:
|
||||
- TZ=Asia/Shanghai
|
||||
- BACKEND_URL=${BACKEND_URL:-http://rust-srec-backend:8080}
|
||||
- COOKIE_SECURE=${COOKIE_SECURE:-}
|
||||
image: ghcr.io/hua0512/rust-srec-frontend:dev
|
||||
labels:
|
||||
createdBy: Apps
|
||||
logging:
|
||||
driver: json-file
|
||||
options:
|
||||
max-file: '3'
|
||||
max-size: 50m
|
||||
networks:
|
||||
- 1panel-network
|
||||
ports:
|
||||
- ${PANEL_APP_PORT_HTTP}:80
|
||||
restart: always
|
||||
rust-srec-backend:
|
||||
container_name: backend-rust-srec
|
||||
env_file:
|
||||
- ./envs/global.env
|
||||
- .env
|
||||
environment:
|
||||
- TZ=Asia/Shanghai
|
||||
- RUST_LOG=${RUST_LOG:-info}
|
||||
- DATABASE_URL=${DATABASE_URL:-sqlite:///app/data/rust-srec.db}
|
||||
- API_PORT=8080
|
||||
- API_BIND_ADDRESS=0.0.0.0
|
||||
- ACCESS_TOKEN_EXPIRATION_SECS=${ACCESS_TOKEN_EXPIRATION_SECS:-3600}
|
||||
- REFRESH_TOKEN_EXPIRATION_SECS=${REFRESH_TOKEN_EXPIRATION_SECS:-604800}
|
||||
- MIN_PASSWORD_LENGTH=${MIN_PASSWORD_LENGTH:-8}
|
||||
- HTTP_PROXY=${HTTP_PROXY:-}
|
||||
- HTTPS_PROXY=${HTTP_PROXY:-}
|
||||
healthcheck:
|
||||
interval: 30s
|
||||
retries: 3
|
||||
start_period: 10s
|
||||
test:
|
||||
- CMD
|
||||
- curl
|
||||
- -f
|
||||
- http://localhost:8080/api/health/live
|
||||
timeout: 10s
|
||||
image: ghcr.io/hua0512/rust-srec:dev
|
||||
logging:
|
||||
driver: json-file
|
||||
options:
|
||||
max-file: '5'
|
||||
max-size: 100m
|
||||
networks:
|
||||
- 1panel-network
|
||||
ports:
|
||||
- ${PANEL_APP_PORT_API}:8080
|
||||
restart: always
|
||||
volumes:
|
||||
- ${RUST_REC_DATA_ROOT_PATH}/data:/app/data
|
||||
- ${RUST_REC_DATA_ROOT_PATH}/output:/app/output
|
||||
- ${RUST_REC_ROOT_PATH}/config:/app/config
|
||||
- ${RUST_REC_ROOT_PATH}/logs:/app/logs
|
||||
- ${RUST_REC_ROOT_PATH}/tmp:/tmp
|
||||
@@ -0,0 +1,8 @@
|
||||
# copyright© 2024 XinJiang Ms Studio
|
||||
ENV_FILE=.env
|
||||
DATA_DIR=/app/data
|
||||
CONFIG_DIR=/app/config
|
||||
OUTPUT_DIR=/app/output
|
||||
LOG_DIR=/app/logs
|
||||
JWT_ISSUER=rust-srec
|
||||
JWT_AUDIENCE=rust-srec-api
|
||||
@@ -0,0 +1,2 @@
|
||||
# copyright© 2024 XinJiang Ms Studio
|
||||
TZ=Asia/Shanghai
|
||||
@@ -22,6 +22,9 @@ WOODPECKER_ADMIN=
|
||||
# 组织列表
|
||||
WOODPECKER_ORGS=
|
||||
|
||||
# 特权插件
|
||||
WOODPECKER_PLUGINS_PRIVILEGED=
|
||||
|
||||
# 登录过期时间 [必填]
|
||||
WOODPECKER_SESSION_EXPIRES=72h
|
||||
|
||||
|
||||
Reference in New Issue
Block a user