diff --git a/apps/tianji/1.33.9/.env.sample b/apps/tianji/1.33.9/.env.sample new file mode 100644 index 000000000..fa47f3a39 --- /dev/null +++ b/apps/tianji/1.33.9/.env.sample @@ -0,0 +1,11 @@ +CONTAINER_NAME="tianji" +PANEL_APP_PORT_HTTP="40205" +ALLOW_OPENAPI="true" +ALLOW_REGISTER="false" +JWT_SECRET="any-random-text_fZpxzA" +PANEL_DB_HOST="postgresql" +PANEL_DB_HOST_NAME="postgresql" +PANEL_DB_NAME="tianji_5pz3w2" +PANEL_DB_PORT="5432" +PANEL_DB_USER="tianji_XA6H4c" +PANEL_DB_USER_PASSWORD="tianji_4X2sNe" diff --git a/apps/tianji/1.33.9/data.yml b/apps/tianji/1.33.9/data.yml new file mode 100644 index 000000000..8178bbdf2 --- /dev/null +++ b/apps/tianji/1.33.9/data.yml @@ -0,0 +1,167 @@ +additionalProperties: + formFields: + - default: 40205 + edit: true + envKey: PANEL_APP_PORT_HTTP + labelEn: Port + labelZh: 端口 + label: + en: 'Port' + zh: '端口' + zh-Hant: '埠' + ja: 'ポート' + ko: '포트' + ru: 'Порт' + ms: 'Port' + pt-br: 'Porta' + required: true + rule: paramPort + type: number + - default: "" + edit: true + envKey: PANEL_DB_HOST + key: postgresql + labelEn: Database Service + labelZh: 数据库服务 + label: + en: 'Database Service' + zh: '数据库服务' + zh-Hant: '資料庫服務' + ja: 'データベースサービス' + ko: '데이터베이스 서비스' + ru: 'Сервис базы данных' + ms: 'Perkhidmatan Pangkalan Data' + pt-br: 'Serviço de Banco de Dados' + required: true + type: service + - default: "5432" + edit: true + envKey: PANEL_DB_PORT + labelEn: Database Port Number + labelZh: 数据库端口号 + label: + en: 'Database Port Number' + zh: '数据库端口号' + zh-Hant: '資料庫埠號' + ja: 'データベースポート番号' + ko: '데이터베이스 포트 번호' + ru: 'Номер порта базы данных' + ms: 'Nombor port pangkalan data' + pt-br: 'Número da porta do banco de dados' + required: true + rule: paramPort + type: number + - default: tianji + edit: true + envKey: PANEL_DB_NAME + labelEn: Database Name + labelZh: 数据库名 + label: + en: 'Database Name' + zh: '数据库名' + zh-Hant: '資料庫名' + ja: 'データベース名' + ko: '데이터베이스 이름' + ru: 'Имя базы данных' + ms: 'Nama pangkalan data' + pt-br: 'Nome do banco de dados' + random: true + required: true + rule: paramCommon + type: text + - default: tianji + edit: true + envKey: PANEL_DB_USER + labelEn: Database User + labelZh: 数据库用户 + label: + en: 'Database User' + zh: '数据库用户' + zh-Hant: '資料庫用戶' + ja: 'データベースユーザー' + ko: '데이터베이스 사용자' + ru: 'Пользователь базы данных' + ms: 'Pengguna pangkalan data' + pt-br: 'Usuário do banco de dados' + random: true + required: true + rule: paramCommon + type: text + - default: tianji + edit: true + envKey: PANEL_DB_USER_PASSWORD + labelEn: Database Password + labelZh: 数据库用户密码 + label: + en: 'Database Password' + zh: '数据库用户密码' + zh-Hant: '資料庫用戶密碼' + ja: 'データベースユーザーパスワード' + ko: '데이터베이스 사용자 비밀번호' + ru: 'Пароль пользователя базы данных' + ms: 'Kata laluan pengguna pangkalan data' + pt-br: 'Senha do usuário do banco de dados' + random: true + required: true + rule: paramComplexity + type: password + - default: any-random-text + edit: true + envKey: JWT_SECRET + labelEn: Secret + labelZh: 秘钥 + label: + en: 'Secret' + zh: '密钥' + zh-Hant: '金鑰' + ja: 'シークレット' + ko: '비밀 키' + ru: 'Секрет' + ms: 'Rahsia' + pt-br: 'Segredo' + random: true + required: true + rule: paramComplexity + type: text + - default: "true" + edit: true + envKey: ALLOW_OPENAPI + labelEn: Allow OpenAPI + labelZh: 是否开启OpenAPI + label: + en: 'Allow OpenAPI' + zh: '允许开启 OpenAPI' + zh-Hant: '允許啟用 OpenAPI' + ja: 'OpenAPI を許可' + ko: 'OpenAPI 허용' + ru: 'Разрешить OpenAPI' + ms: 'Benarkan OpenAPI' + pt-br: 'Permitir OpenAPI' + required: true + type: select + values: + - label: "true" + value: "true" + - label: "false" + value: "false" + - default: "false" + edit: true + envKey: ALLOW_REGISTER + labelEn: Allow Register + labelZh: 是否允许注册 + label: + en: 'Allow Register' + zh: '允许注册' + zh-Hant: '允許註冊' + ja: '登録を許可' + ko: '등록 허용' + ru: 'Разрешить регистрацию' + ms: 'Benarkan pendaftaran' + pt-br: 'Permitir registro' + required: true + type: select + values: + - label: "true" + value: "true" + - label: "false" + value: "false" diff --git a/apps/tianji/1.33.9/docker-compose.yml b/apps/tianji/1.33.9/docker-compose.yml new file mode 100644 index 000000000..9abf870b7 --- /dev/null +++ b/apps/tianji/1.33.9/docker-compose.yml @@ -0,0 +1,19 @@ +services: + tianji: + container_name: ${CONTAINER_NAME} + restart: always + image: moonrailgun/tianji:1.33.9 + networks: + - 1panel-network + ports: + - ${PANEL_APP_PORT_HTTP}:12345 + environment: + - DATABASE_URL=postgresql://${PANEL_DB_USER}:${PANEL_DB_USER_PASSWORD}@${PANEL_DB_HOST}:${PANEL_DB_PORT}/${PANEL_DB_NAME} + - JWT_SECRET=${JWT_SECRET} + - ALLOW_REGISTER=${ALLOW_REGISTER} + - ALLOW_OPENAPI=${ALLOW_OPENAPI} + labels: + createdBy: "Apps" +networks: + 1panel-network: + external: true diff --git a/apps/tianji/1.33.9/scripts/init.sh b/apps/tianji/1.33.9/scripts/init.sh new file mode 100755 index 000000000..2a53d75f3 --- /dev/null +++ b/apps/tianji/1.33.9/scripts/init.sh @@ -0,0 +1,4 @@ +#!/usr/bin/env bash +set -euo pipefail + +exit 0 diff --git a/apps/tianji/1.33.9/scripts/uninstall.sh b/apps/tianji/1.33.9/scripts/uninstall.sh new file mode 100755 index 000000000..ab8a8d674 --- /dev/null +++ b/apps/tianji/1.33.9/scripts/uninstall.sh @@ -0,0 +1,2 @@ +#!/bin/bash +docker-compose down --volumes diff --git a/apps/tianji/1.33.9/scripts/upgrade.sh b/apps/tianji/1.33.9/scripts/upgrade.sh new file mode 100755 index 000000000..33c7cbc01 --- /dev/null +++ b/apps/tianji/1.33.9/scripts/upgrade.sh @@ -0,0 +1,35 @@ +#!/usr/bin/env bash +set -euo pipefail + +ENV_FILE="${ENV_FILE:-./.env}" + +ensure_env_default() { + local key="$1" + local value="$2" + + if [[ ! -f "$ENV_FILE" ]]; then + echo "$ENV_FILE not found; skipped $key migration" + return + fi + + if grep -qE "^${key}=" "$ENV_FILE"; then + local current + current="$(sed -n -E "s/^${key}=//p" "$ENV_FILE" | tail -n 1)" + current="${current%\"}" + current="${current#\"}" + current="${current%\'}" + current="${current#\'}" + if [[ -n "$current" ]]; then + echo "$key already exists" + return + fi + sed -i -E "s|^${key}=.*|${key}=${value}|" "$ENV_FILE" + echo "Updated empty $key" + return + fi + + printf '%s=%s\n' "$key" "$value" >> "$ENV_FILE" + echo "Added $key" +} + +ensure_env_default "PANEL_DB_PORT" "5432"