mirror of
https://github.com/okxlin/appstore.git
synced 2026-09-23 00:00:59 +00:00
Merge pull request #6076 from okxlin/maint-pr-6028-documenso
Maintain documenso app package for 2.17.0
This commit is contained in:
@@ -1,379 +0,0 @@
|
||||
additionalProperties:
|
||||
formFields:
|
||||
- default: 127.0.0.1
|
||||
edit: true
|
||||
envKey: PANEL_APP_BIND_ADDRESS
|
||||
labelEn: Bind Address
|
||||
labelZh: 绑定地址
|
||||
label:
|
||||
en: Bind Address
|
||||
zh: 绑定地址
|
||||
zh-Hant: 綁定位址
|
||||
ja: バインドアドレス
|
||||
ko: 바인드 주소
|
||||
ru: Адрес привязки
|
||||
ms: Alamat ikatan
|
||||
pt-br: Endereco de vinculacao
|
||||
required: true
|
||||
type: text
|
||||
- default: 3000
|
||||
edit: true
|
||||
envKey: PANEL_APP_PORT_HTTP
|
||||
labelEn: HTTP Port
|
||||
labelZh: HTTP 端口
|
||||
label:
|
||||
en: HTTP Port
|
||||
zh: HTTP 端口
|
||||
zh-Hant: HTTP 連接埠
|
||||
ja: HTTP ポート
|
||||
ko: HTTP 포트
|
||||
ru: HTTP-порт
|
||||
ms: Port HTTP
|
||||
pt-br: Porta HTTP
|
||||
required: true
|
||||
rule: paramPort
|
||||
type: number
|
||||
- default: http://127.0.0.1:3000
|
||||
edit: true
|
||||
envKey: NEXT_PUBLIC_WEBAPP_URL
|
||||
labelEn: Public URL
|
||||
labelZh: 公开访问地址
|
||||
label:
|
||||
en: Public URL
|
||||
zh: 公开访问地址
|
||||
zh-Hant: 公開存取網址
|
||||
ja: 公開 URL
|
||||
ko: 공개 URL
|
||||
ru: Публичный URL
|
||||
ms: URL awam
|
||||
pt-br: URL publica
|
||||
required: true
|
||||
type: text
|
||||
- default: postgresql
|
||||
envKey: PANEL_DB_TYPE
|
||||
labelEn: Database Runtime
|
||||
labelZh: 数据库运行环境
|
||||
label:
|
||||
en: Database Runtime
|
||||
zh: 数据库运行环境
|
||||
zh-Hant: 資料庫執行環境
|
||||
ja: データベース実行環境
|
||||
ko: 데이터베이스 런타임
|
||||
ru: Среда базы данных
|
||||
ms: Masa jalan pangkalan data
|
||||
pt-br: Ambiente de banco de dados
|
||||
required: true
|
||||
type: apps
|
||||
values:
|
||||
- label: PostgreSQL
|
||||
value: postgresql
|
||||
child:
|
||||
default: ""
|
||||
envKey: PANEL_DB_HOST
|
||||
labelEn: PostgreSQL Service
|
||||
labelZh: PostgreSQL 服务
|
||||
label:
|
||||
en: PostgreSQL Service
|
||||
zh: PostgreSQL 服务
|
||||
zh-Hant: PostgreSQL 服務
|
||||
ja: PostgreSQL サービス
|
||||
ko: PostgreSQL 서비스
|
||||
ru: Сервис PostgreSQL
|
||||
ms: Perkhidmatan PostgreSQL
|
||||
pt-br: Servico PostgreSQL
|
||||
required: true
|
||||
type: service
|
||||
- default: 5432
|
||||
edit: true
|
||||
envKey: PANEL_DB_PORT
|
||||
labelEn: Database Port
|
||||
labelZh: 数据库端口
|
||||
label:
|
||||
en: Database Port
|
||||
zh: 数据库端口
|
||||
zh-Hant: 資料庫連接埠
|
||||
ja: データベースポート
|
||||
ko: 데이터베이스 포트
|
||||
ru: Порт базы данных
|
||||
ms: Port pangkalan data
|
||||
pt-br: Porta do banco de dados
|
||||
required: true
|
||||
rule: paramPort
|
||||
type: number
|
||||
- default: documenso
|
||||
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: documenso
|
||||
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: Usuario do banco de dados
|
||||
random: true
|
||||
required: true
|
||||
rule: paramCommon
|
||||
type: text
|
||||
- default: change-me
|
||||
edit: true
|
||||
envKey: PANEL_DB_USER_PASSWORD
|
||||
labelEn: Database Password
|
||||
labelZh: 数据库密码
|
||||
label:
|
||||
en: Database Password
|
||||
zh: 数据库密码
|
||||
zh-Hant: 資料庫密碼
|
||||
ja: データベースパスワード
|
||||
ko: 데이터베이스 비밀번호
|
||||
ru: Пароль базы данных
|
||||
ms: Kata laluan pangkalan data
|
||||
pt-br: Senha do banco de dados
|
||||
required: true
|
||||
rule: paramComplexity
|
||||
type: password
|
||||
- default: smtp.example.com
|
||||
edit: true
|
||||
envKey: SMTP_HOST
|
||||
labelEn: SMTP Host
|
||||
labelZh: SMTP 主机
|
||||
label:
|
||||
en: SMTP Host
|
||||
zh: SMTP 主机
|
||||
zh-Hant: SMTP 主機
|
||||
ja: SMTP ホスト
|
||||
ko: SMTP 호스트
|
||||
ru: SMTP-сервер
|
||||
ms: Hos SMTP
|
||||
pt-br: Servidor SMTP
|
||||
required: true
|
||||
type: text
|
||||
- default: 587
|
||||
edit: true
|
||||
envKey: SMTP_PORT
|
||||
labelEn: SMTP Port
|
||||
labelZh: SMTP 端口
|
||||
label:
|
||||
en: SMTP Port
|
||||
zh: SMTP 端口
|
||||
zh-Hant: SMTP 連接埠
|
||||
ja: SMTP ポート
|
||||
ko: SMTP 포트
|
||||
ru: SMTP-порт
|
||||
ms: Port SMTP
|
||||
pt-br: Porta SMTP
|
||||
required: true
|
||||
rule: paramPort
|
||||
type: number
|
||||
- default: "false"
|
||||
edit: true
|
||||
envKey: SMTP_SECURE
|
||||
labelEn: SMTP Implicit TLS
|
||||
labelZh: SMTP 隐式 TLS
|
||||
label:
|
||||
en: SMTP Implicit TLS
|
||||
zh: SMTP 隐式 TLS
|
||||
zh-Hant: SMTP 隱式 TLS
|
||||
ja: SMTP 暗黙 TLS
|
||||
ko: SMTP 암시적 TLS
|
||||
ru: Неявный TLS SMTP
|
||||
ms: TLS tersirat SMTP
|
||||
pt-br: TLS implicito SMTP
|
||||
required: true
|
||||
type: select
|
||||
values:
|
||||
- label: "false"
|
||||
value: "false"
|
||||
- label: "true"
|
||||
value: "true"
|
||||
- default: ""
|
||||
edit: true
|
||||
envKey: SMTP_USERNAME
|
||||
labelEn: SMTP Username
|
||||
labelZh: SMTP 用户名
|
||||
label:
|
||||
en: SMTP Username
|
||||
zh: SMTP 用户名
|
||||
zh-Hant: SMTP 使用者名稱
|
||||
ja: SMTP ユーザー名
|
||||
ko: SMTP 사용자 이름
|
||||
ru: Имя пользователя SMTP
|
||||
ms: Nama pengguna SMTP
|
||||
pt-br: Usuario SMTP
|
||||
required: false
|
||||
type: text
|
||||
- default: ""
|
||||
edit: true
|
||||
envKey: SMTP_PASSWORD
|
||||
labelEn: SMTP Password
|
||||
labelZh: SMTP 密码
|
||||
label:
|
||||
en: SMTP Password
|
||||
zh: SMTP 密码
|
||||
zh-Hant: SMTP 密碼
|
||||
ja: SMTP パスワード
|
||||
ko: SMTP 비밀번호
|
||||
ru: Пароль SMTP
|
||||
ms: Kata laluan SMTP
|
||||
pt-br: Senha SMTP
|
||||
required: false
|
||||
type: password
|
||||
- default: Documenso
|
||||
edit: true
|
||||
envKey: SMTP_FROM_NAME
|
||||
labelEn: Email Sender Name
|
||||
labelZh: 邮件发件人名称
|
||||
label:
|
||||
en: Email Sender Name
|
||||
zh: 邮件发件人名称
|
||||
zh-Hant: 郵件寄件者名稱
|
||||
ja: メール送信者名
|
||||
ko: 이메일 발신자 이름
|
||||
ru: Имя отправителя
|
||||
ms: Nama penghantar e-mel
|
||||
pt-br: Nome do remetente
|
||||
required: true
|
||||
type: text
|
||||
- default: documenso@example.com
|
||||
edit: true
|
||||
envKey: SMTP_FROM_ADDRESS
|
||||
labelEn: Email Sender Address
|
||||
labelZh: 邮件发件人地址
|
||||
label:
|
||||
en: Email Sender Address
|
||||
zh: 邮件发件人地址
|
||||
zh-Hant: 郵件寄件者地址
|
||||
ja: メール送信元アドレス
|
||||
ko: 이메일 발신자 주소
|
||||
ru: Адрес отправителя
|
||||
ms: Alamat penghantar e-mel
|
||||
pt-br: Endereco do remetente
|
||||
required: true
|
||||
type: text
|
||||
- default: "false"
|
||||
edit: true
|
||||
envKey: DISABLE_SIGNUP
|
||||
labelEn: Disable New Signups
|
||||
labelZh: 禁止新用户注册
|
||||
label:
|
||||
en: Disable New Signups
|
||||
zh: 禁止新用户注册
|
||||
zh-Hant: 停用新使用者註冊
|
||||
ja: 新規登録を無効化
|
||||
ko: 신규 가입 비활성화
|
||||
ru: Запретить новые регистрации
|
||||
ms: Nyahdayakan pendaftaran baharu
|
||||
pt-br: Desativar novos cadastros
|
||||
required: true
|
||||
type: select
|
||||
values:
|
||||
- label: "false"
|
||||
value: "false"
|
||||
- label: "true"
|
||||
value: "true"
|
||||
- default: generate
|
||||
disabled: true
|
||||
edit: true
|
||||
envKey: NEXTAUTH_SECRET
|
||||
labelEn: Authentication Secret
|
||||
labelZh: 认证密钥
|
||||
label:
|
||||
en: Authentication Secret
|
||||
zh: 认证密钥
|
||||
zh-Hant: 驗證密鑰
|
||||
ja: 認証シークレット
|
||||
ko: 인증 비밀 키
|
||||
ru: Секрет аутентификации
|
||||
ms: Rahsia pengesahan
|
||||
pt-br: Segredo de autenticacao
|
||||
required: true
|
||||
type: password
|
||||
- default: generate
|
||||
disabled: true
|
||||
edit: true
|
||||
envKey: NEXT_PRIVATE_ENCRYPTION_KEY
|
||||
labelEn: Primary Encryption Key
|
||||
labelZh: 主加密密钥
|
||||
label:
|
||||
en: Primary Encryption Key
|
||||
zh: 主加密密钥
|
||||
zh-Hant: 主要加密金鑰
|
||||
ja: プライマリ暗号化キー
|
||||
ko: 기본 암호화 키
|
||||
ru: Основной ключ шифрования
|
||||
ms: Kunci penyulitan utama
|
||||
pt-br: Chave de criptografia primaria
|
||||
required: true
|
||||
type: password
|
||||
- default: generate
|
||||
disabled: true
|
||||
edit: true
|
||||
envKey: NEXT_PRIVATE_ENCRYPTION_SECONDARY_KEY
|
||||
labelEn: Secondary Encryption Key
|
||||
labelZh: 备用加密密钥
|
||||
label:
|
||||
en: Secondary Encryption Key
|
||||
zh: 备用加密密钥
|
||||
zh-Hant: 備用加密金鑰
|
||||
ja: セカンダリ暗号化キー
|
||||
ko: 보조 암호화 키
|
||||
ru: Резервный ключ шифрования
|
||||
ms: Kunci penyulitan sekunder
|
||||
pt-br: Chave de criptografia secundaria
|
||||
required: true
|
||||
type: password
|
||||
- default: generate
|
||||
disabled: true
|
||||
edit: true
|
||||
envKey: SIGNING_PASSPHRASE
|
||||
labelEn: Signing Certificate Passphrase
|
||||
labelZh: 签名证书密码
|
||||
label:
|
||||
en: Signing Certificate Passphrase
|
||||
zh: 签名证书密码
|
||||
zh-Hant: 簽署憑證密碼
|
||||
ja: 署名証明書パスフレーズ
|
||||
ko: 서명 인증서 암호
|
||||
ru: Пароль сертификата подписи
|
||||
ms: Frasa laluan sijil tandatangan
|
||||
pt-br: Senha do certificado de assinatura
|
||||
required: true
|
||||
type: password
|
||||
- default: generate
|
||||
disabled: true
|
||||
edit: true
|
||||
envKey: NEXT_PRIVATE_DATABASE_URL
|
||||
labelEn: Generated Database URL
|
||||
labelZh: 生成的数据库地址
|
||||
label:
|
||||
en: Generated Database URL
|
||||
zh: 生成的数据库地址
|
||||
zh-Hant: 產生的資料庫網址
|
||||
ja: 生成されたデータベース URL
|
||||
ko: 생성된 데이터베이스 URL
|
||||
ru: Сформированный URL базы данных
|
||||
ms: URL pangkalan data dijana
|
||||
pt-br: URL de banco de dados gerada
|
||||
required: true
|
||||
type: password
|
||||
@@ -1,58 +0,0 @@
|
||||
services:
|
||||
documenso:
|
||||
image: "documenso/documenso:v2.16.0@sha256:945bd2c04306bd5d78def0c4ceafdffb6b0a106cd6a2543db5acda9a6424b2d9"
|
||||
container_name: ${CONTAINER_NAME}
|
||||
restart: unless-stopped
|
||||
command:
|
||||
- sh
|
||||
- -c
|
||||
- ../../node_modules/.bin/prisma migrate deploy --schema ../../packages/prisma/schema.prisma && exec env HOSTNAME=0.0.0.0 node build/server/main.js
|
||||
networks:
|
||||
- 1panel-network
|
||||
ports:
|
||||
- "${PANEL_APP_BIND_ADDRESS}:${PANEL_APP_PORT_HTTP}:3000"
|
||||
environment:
|
||||
PORT: "3000"
|
||||
NEXTAUTH_SECRET: ${NEXTAUTH_SECRET}
|
||||
NEXT_PRIVATE_ENCRYPTION_KEY: ${NEXT_PRIVATE_ENCRYPTION_KEY}
|
||||
NEXT_PRIVATE_ENCRYPTION_SECONDARY_KEY: ${NEXT_PRIVATE_ENCRYPTION_SECONDARY_KEY}
|
||||
NEXT_PUBLIC_WEBAPP_URL: ${NEXT_PUBLIC_WEBAPP_URL}
|
||||
NEXT_PRIVATE_INTERNAL_WEBAPP_URL: http://127.0.0.1:3000
|
||||
NEXT_PRIVATE_DATABASE_URL: ${NEXT_PRIVATE_DATABASE_URL}
|
||||
NEXT_PRIVATE_DIRECT_DATABASE_URL: ${NEXT_PRIVATE_DATABASE_URL}
|
||||
NEXT_PUBLIC_UPLOAD_TRANSPORT: database
|
||||
NEXT_PRIVATE_SMTP_TRANSPORT: smtp-auth
|
||||
NEXT_PRIVATE_SMTP_HOST: ${SMTP_HOST}
|
||||
NEXT_PRIVATE_SMTP_PORT: ${SMTP_PORT}
|
||||
NEXT_PRIVATE_SMTP_SECURE: ${SMTP_SECURE}
|
||||
NEXT_PRIVATE_SMTP_UNSAFE_IGNORE_TLS: "false"
|
||||
NEXT_PRIVATE_SMTP_USERNAME: ${SMTP_USERNAME}
|
||||
NEXT_PRIVATE_SMTP_PASSWORD: ${SMTP_PASSWORD}
|
||||
NEXT_PRIVATE_SMTP_FROM_NAME: ${SMTP_FROM_NAME}
|
||||
NEXT_PRIVATE_SMTP_FROM_ADDRESS: ${SMTP_FROM_ADDRESS}
|
||||
NEXT_PRIVATE_SIGNING_TRANSPORT: local
|
||||
NEXT_PRIVATE_SIGNING_LOCAL_FILE_PATH: /opt/documenso/cert.p12
|
||||
NEXT_PRIVATE_SIGNING_PASSPHRASE: ${SIGNING_PASSPHRASE}
|
||||
NEXT_PUBLIC_DISABLE_SIGNUP: ${DISABLE_SIGNUP}
|
||||
DOCUMENSO_DISABLE_TELEMETRY: "true"
|
||||
read_only: true
|
||||
tmpfs:
|
||||
- /tmp:size=256m,mode=1777
|
||||
security_opt:
|
||||
- no-new-privileges:true
|
||||
cap_drop:
|
||||
- ALL
|
||||
volumes:
|
||||
- ./data/cert.p12:/opt/documenso/cert.p12:ro
|
||||
healthcheck:
|
||||
test: ["CMD", "node", "-e", "fetch('http://127.0.0.1:3000/api/health').then(r=>{if(!r.ok)process.exit(1)}).catch(()=>process.exit(1))"]
|
||||
interval: 30s
|
||||
timeout: 10s
|
||||
start_period: 90s
|
||||
retries: 5
|
||||
labels:
|
||||
createdBy: "Apps"
|
||||
|
||||
networks:
|
||||
1panel-network:
|
||||
external: true
|
||||
@@ -1,18 +1,7 @@
|
||||
CONTAINER_NAME=documenso
|
||||
CONTAINER_NAME=documenso-compose-check
|
||||
PANEL_APP_BIND_ADDRESS=127.0.0.1
|
||||
PANEL_APP_PORT_HTTP=3000
|
||||
NEXT_PUBLIC_WEBAPP_URL=http://127.0.0.1:3000
|
||||
PANEL_DB_TYPE=postgresql
|
||||
PANEL_DB_HOST=postgresql
|
||||
PANEL_DB_PORT=5432
|
||||
PANEL_DB_NAME=documenso
|
||||
PANEL_DB_USER=documenso
|
||||
PANEL_DB_USER_PASSWORD=change-me
|
||||
NEXT_PRIVATE_DATABASE_URL=generate
|
||||
NEXTAUTH_SECRET=generate
|
||||
NEXT_PRIVATE_ENCRYPTION_KEY=generate
|
||||
NEXT_PRIVATE_ENCRYPTION_SECONDARY_KEY=generate
|
||||
SIGNING_PASSPHRASE=generate
|
||||
SMTP_HOST=smtp.example.com
|
||||
SMTP_PORT=587
|
||||
SMTP_SECURE=false
|
||||
@@ -21,3 +10,8 @@ SMTP_PASSWORD=
|
||||
SMTP_FROM_NAME=Documenso
|
||||
SMTP_FROM_ADDRESS=documenso@example.com
|
||||
DISABLE_SIGNUP=false
|
||||
NEXTAUTH_SECRET=generate
|
||||
NEXT_PRIVATE_ENCRYPTION_KEY=generate
|
||||
NEXT_PRIVATE_ENCRYPTION_SECONDARY_KEY=generate
|
||||
SIGNING_PASSPHRASE=generate
|
||||
NEXT_PRIVATE_DATABASE_URL=generate
|
||||
@@ -0,0 +1,393 @@
|
||||
additionalProperties:
|
||||
formFields:
|
||||
- default: 127.0.0.1
|
||||
edit: true
|
||||
envKey: PANEL_APP_BIND_ADDRESS
|
||||
labelEn: Bind Address
|
||||
labelZh: 绑定地址
|
||||
label:
|
||||
en: Bind Address
|
||||
zh: 绑定地址
|
||||
zh-Hant: 綁定位址
|
||||
ja: バインドアドレス
|
||||
ko: 바인드 주소
|
||||
ru: Адрес привязки
|
||||
ms: Alamat ikatan
|
||||
pt-br: Endereco de vinculacao
|
||||
required: true
|
||||
type: text
|
||||
- default: 3000
|
||||
edit: true
|
||||
envKey: PANEL_APP_PORT_HTTP
|
||||
labelEn: HTTP Port
|
||||
labelZh: HTTP 端口
|
||||
label:
|
||||
en: HTTP Port
|
||||
zh: HTTP 端口
|
||||
zh-Hant: HTTP 連接埠
|
||||
ja: HTTP ポート
|
||||
ko: HTTP 포트
|
||||
ru: HTTP-порт
|
||||
ms: Port HTTP
|
||||
pt-br: Porta HTTP
|
||||
required: true
|
||||
rule: paramPort
|
||||
type: number
|
||||
- default: http://127.0.0.1:3000
|
||||
edit: true
|
||||
envKey: NEXT_PUBLIC_WEBAPP_URL
|
||||
labelEn: Public URL
|
||||
labelZh: 公开访问地址
|
||||
label:
|
||||
en: Public URL
|
||||
zh: 公开访问地址
|
||||
zh-Hant: 公開存取網址
|
||||
ja: 公開 URL
|
||||
ko: 공개 URL
|
||||
ru: Публичный URL
|
||||
ms: URL awam
|
||||
pt-br: URL publica
|
||||
required: true
|
||||
type: text
|
||||
- default: postgresql
|
||||
envKey: PANEL_DB_TYPE
|
||||
labelEn: Database Runtime
|
||||
labelZh: 数据库运行环境
|
||||
label:
|
||||
en: Database Runtime
|
||||
zh: 数据库运行环境
|
||||
zh-Hant: 資料庫執行環境
|
||||
ja: データベース実行環境
|
||||
ko: 데이터베이스 런타임
|
||||
ru: Среда базы данных
|
||||
ms: Masa jalan pangkalan data
|
||||
pt-br: Ambiente de banco de dados
|
||||
required: true
|
||||
type: apps
|
||||
values:
|
||||
- label: PostgreSQL
|
||||
value: postgresql
|
||||
child:
|
||||
default: ''
|
||||
envKey: PANEL_DB_HOST
|
||||
labelEn: PostgreSQL Service
|
||||
labelZh: PostgreSQL 服务
|
||||
label:
|
||||
en: PostgreSQL Service
|
||||
zh: PostgreSQL 服务
|
||||
zh-Hant: PostgreSQL 服務
|
||||
ja: PostgreSQL サービス
|
||||
ko: PostgreSQL 서비스
|
||||
ru: Сервис PostgreSQL
|
||||
ms: Perkhidmatan PostgreSQL
|
||||
pt-br: Servico PostgreSQL
|
||||
required: true
|
||||
type: service
|
||||
- default: 5432
|
||||
edit: false
|
||||
envKey: PANEL_DB_PORT
|
||||
labelEn: Database Port
|
||||
labelZh: 数据库端口
|
||||
label:
|
||||
en: Database Port
|
||||
zh: 数据库端口
|
||||
zh-Hant: 資料庫連接埠
|
||||
ja: データベースポート
|
||||
ko: 데이터베이스 포트
|
||||
ru: Порт базы данных
|
||||
ms: Port pangkalan data
|
||||
pt-br: Porta do banco de dados
|
||||
required: true
|
||||
type: number
|
||||
- default: documenso
|
||||
edit: false
|
||||
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: documenso
|
||||
edit: false
|
||||
envKey: PANEL_DB_USER
|
||||
labelEn: Database User
|
||||
labelZh: 数据库用户
|
||||
label:
|
||||
en: Database User
|
||||
zh: 数据库用户
|
||||
zh-Hant: 資料庫使用者
|
||||
ja: データベースユーザー
|
||||
ko: 데이터베이스 사용자
|
||||
ru: Пользователь базы данных
|
||||
ms: Pengguna pangkalan data
|
||||
pt-br: Usuario do banco de dados
|
||||
random: true
|
||||
required: true
|
||||
rule: paramCommon
|
||||
type: text
|
||||
- default: change-me
|
||||
edit: false
|
||||
envKey: PANEL_DB_USER_PASSWORD
|
||||
labelEn: Database Password
|
||||
labelZh: 数据库密码
|
||||
label:
|
||||
en: Database Password
|
||||
zh: 数据库密码
|
||||
zh-Hant: 資料庫密碼
|
||||
ja: データベースパスワード
|
||||
ko: 데이터베이스 비밀번호
|
||||
ru: Пароль базы данных
|
||||
ms: Kata laluan pangkalan data
|
||||
pt-br: Senha do banco de dados
|
||||
required: true
|
||||
rule: paramComplexity
|
||||
type: password
|
||||
- default: smtp.example.com
|
||||
edit: true
|
||||
envKey: SMTP_HOST
|
||||
labelEn: SMTP Host
|
||||
labelZh: SMTP 主机
|
||||
label:
|
||||
en: SMTP Host
|
||||
zh: SMTP 主机
|
||||
zh-Hant: SMTP 主機
|
||||
ja: SMTP ホスト
|
||||
ko: SMTP 호스트
|
||||
ru: SMTP-сервер
|
||||
ms: Hos SMTP
|
||||
pt-br: Servidor SMTP
|
||||
required: true
|
||||
type: text
|
||||
- default: 587
|
||||
edit: true
|
||||
envKey: SMTP_PORT
|
||||
labelEn: SMTP Port
|
||||
labelZh: SMTP 端口
|
||||
label:
|
||||
en: SMTP Port
|
||||
zh: SMTP 端口
|
||||
zh-Hant: SMTP 連接埠
|
||||
ja: SMTP ポート
|
||||
ko: SMTP 포트
|
||||
ru: SMTP-порт
|
||||
ms: Port SMTP
|
||||
pt-br: Porta SMTP
|
||||
required: true
|
||||
type: number
|
||||
- default: 'false'
|
||||
edit: true
|
||||
envKey: SMTP_SECURE
|
||||
labelEn: SMTP Implicit TLS
|
||||
labelZh: SMTP 隐式 TLS
|
||||
label:
|
||||
en: SMTP Implicit TLS
|
||||
zh: SMTP 隐式 TLS
|
||||
zh-Hant: SMTP 隱式 TLS
|
||||
ja: SMTP 暗黙 TLS
|
||||
ko: SMTP 암시적 TLS
|
||||
ru: Неявный TLS SMTP
|
||||
ms: TLS tersirat SMTP
|
||||
pt-br: TLS implicito SMTP
|
||||
required: true
|
||||
type: select
|
||||
values:
|
||||
- label: 'false'
|
||||
value: 'false'
|
||||
- label: 'true'
|
||||
value: 'true'
|
||||
- default: ''
|
||||
edit: true
|
||||
envKey: SMTP_USERNAME
|
||||
labelEn: SMTP Username
|
||||
labelZh: SMTP 用户名
|
||||
label:
|
||||
en: SMTP Username
|
||||
zh: SMTP 用户名
|
||||
zh-Hant: SMTP 使用者名稱
|
||||
ja: SMTP ユーザー名
|
||||
ko: SMTP 사용자 이름
|
||||
ru: Имя пользователя SMTP
|
||||
ms: Nama pengguna SMTP
|
||||
pt-br: Usuario SMTP
|
||||
required: false
|
||||
type: text
|
||||
- default: ''
|
||||
edit: true
|
||||
envKey: SMTP_PASSWORD
|
||||
labelEn: SMTP Password
|
||||
labelZh: SMTP 密码
|
||||
label:
|
||||
en: SMTP Password
|
||||
zh: SMTP 密码
|
||||
zh-Hant: SMTP 密碼
|
||||
ja: SMTP パスワード
|
||||
ko: SMTP 비밀번호
|
||||
ru: Пароль SMTP
|
||||
ms: Kata laluan SMTP
|
||||
pt-br: Senha SMTP
|
||||
required: false
|
||||
type: password
|
||||
- default: Documenso
|
||||
edit: true
|
||||
envKey: SMTP_FROM_NAME
|
||||
labelEn: Email Sender Name
|
||||
labelZh: 邮件发件人名称
|
||||
label:
|
||||
en: Email Sender Name
|
||||
zh: 邮件发件人名称
|
||||
zh-Hant: 郵件寄件者名稱
|
||||
ja: メール送信者名
|
||||
ko: 이메일 발신자 이름
|
||||
ru: Имя отправителя
|
||||
ms: Nama penghantar e-mel
|
||||
pt-br: Nome do remetente
|
||||
required: true
|
||||
type: text
|
||||
- default: documenso@example.com
|
||||
edit: true
|
||||
envKey: SMTP_FROM_ADDRESS
|
||||
labelEn: Email Sender Address
|
||||
labelZh: 邮件发件人地址
|
||||
label:
|
||||
en: Email Sender Address
|
||||
zh: 邮件发件人地址
|
||||
zh-Hant: 郵件寄件者地址
|
||||
ja: メール送信元アドレス
|
||||
ko: 이메일 발신자 주소
|
||||
ru: Адрес отправителя
|
||||
ms: Alamat penghantar e-mel
|
||||
pt-br: Endereco do remetente
|
||||
required: true
|
||||
type: text
|
||||
- default: 'false'
|
||||
edit: true
|
||||
envKey: DISABLE_SIGNUP
|
||||
labelEn: Disable New Signups
|
||||
labelZh: 禁止新用户注册
|
||||
label:
|
||||
en: Disable New Signups
|
||||
zh: 禁止新用户注册
|
||||
zh-Hant: 停用新使用者註冊
|
||||
ja: 新規登録を無効化
|
||||
ko: 신규 가입 비활성화
|
||||
ru: Запретить новые регистрации
|
||||
ms: Nyahdayakan pendaftaran baharu
|
||||
pt-br: Desativar novos cadastros
|
||||
required: true
|
||||
type: select
|
||||
values:
|
||||
- label: 'false'
|
||||
value: 'false'
|
||||
- label: 'true'
|
||||
value: 'true'
|
||||
- default: generate
|
||||
disabled: true
|
||||
edit: true
|
||||
envKey: NEXTAUTH_SECRET
|
||||
labelEn: Authentication Secret
|
||||
labelZh: 认证密钥
|
||||
label:
|
||||
en: Authentication Secret
|
||||
zh: 认证密钥
|
||||
zh-Hant: 驗證密鑰
|
||||
ja: 認証シークレット
|
||||
ko: 인증 비밀 키
|
||||
ru: Секрет аутентификации
|
||||
ms: Rahsia pengesahan
|
||||
pt-br: Segredo de autenticacao
|
||||
required: true
|
||||
type: password
|
||||
- default: generate
|
||||
disabled: true
|
||||
edit: true
|
||||
envKey: NEXT_PRIVATE_ENCRYPTION_KEY
|
||||
labelEn: Primary Encryption Key
|
||||
labelZh: 主加密密钥
|
||||
label:
|
||||
en: Primary Encryption Key
|
||||
zh: 主加密密钥
|
||||
zh-Hant: 主要加密金鑰
|
||||
ja: プライマリ暗号化キー
|
||||
ko: 기본 암호화 키
|
||||
ru: Основной ключ шифрования
|
||||
ms: Kunci penyulitan utama
|
||||
pt-br: Chave de criptografia primaria
|
||||
required: true
|
||||
type: password
|
||||
- default: generate
|
||||
disabled: true
|
||||
edit: true
|
||||
envKey: NEXT_PRIVATE_ENCRYPTION_SECONDARY_KEY
|
||||
labelEn: Secondary Encryption Key
|
||||
labelZh: 备用加密密钥
|
||||
label:
|
||||
en: Secondary Encryption Key
|
||||
zh: 备用加密密钥
|
||||
zh-Hant: 備用加密金鑰
|
||||
ja: セカンダリ暗号化キー
|
||||
ko: 보조 암호화 키
|
||||
ru: Резервный ключ шифрования
|
||||
ms: Kunci penyulitan sekunder
|
||||
pt-br: Chave de criptografia secundaria
|
||||
required: true
|
||||
type: password
|
||||
- default: generate
|
||||
disabled: true
|
||||
edit: true
|
||||
envKey: SIGNING_PASSPHRASE
|
||||
labelEn: Signing Certificate Passphrase
|
||||
labelZh: 签名证书密码
|
||||
label:
|
||||
en: Signing Certificate Passphrase
|
||||
zh: 签名证书密码
|
||||
zh-Hant: 簽署憑證密碼
|
||||
ja: 署名証明書パスフレーズ
|
||||
ko: 서명 인증서 암호
|
||||
ru: Пароль сертификата подписи
|
||||
ms: Frasa laluan sijil tandatangan
|
||||
pt-br: Senha do certificado de assinatura
|
||||
required: true
|
||||
type: password
|
||||
- default: generate
|
||||
disabled: true
|
||||
edit: true
|
||||
envKey: NEXT_PRIVATE_DATABASE_URL
|
||||
labelEn: Generated Database URL
|
||||
labelZh: 生成的数据库地址
|
||||
label:
|
||||
en: Generated Database URL
|
||||
zh: 生成的数据库地址
|
||||
zh-Hant: 產生的資料庫網址
|
||||
ja: 生成されたデータベース URL
|
||||
ko: 생성된 데이터베이스 URL
|
||||
ru: Сформированный URL базы данных
|
||||
ms: URL pangkalan data dijana
|
||||
pt-br: URL de banco de dados gerada
|
||||
required: true
|
||||
type: password
|
||||
- default: Asia/Shanghai
|
||||
edit: true
|
||||
envKey: TZ
|
||||
labelEn: Timezone
|
||||
labelZh: 时区
|
||||
label:
|
||||
en: Timezone
|
||||
zh: 时区
|
||||
zh-Hant: 時區
|
||||
ja: タイムゾーン
|
||||
ko: 시간대
|
||||
ru: Часовой пояс
|
||||
ms: Zon waktu
|
||||
pt-br: Fuso horário
|
||||
required: true
|
||||
type: text
|
||||
@@ -1,6 +1,6 @@
|
||||
services:
|
||||
documenso:
|
||||
image: "documenso/documenso:latest"
|
||||
image: "documenso/documenso:v2.17.0@sha256:1377ba20181d4d029e768b7b7615e4e49c39450a85588a525e78dc586dd2569c"
|
||||
container_name: ${CONTAINER_NAME}
|
||||
restart: unless-stopped
|
||||
command:
|
||||
+11
-13
@@ -1,15 +1,24 @@
|
||||
name: Documenso
|
||||
tags:
|
||||
- 办公
|
||||
- Tool
|
||||
title: 开源文档签署平台
|
||||
description: 开源文档签署平台
|
||||
additionalProperties:
|
||||
key: documenso
|
||||
name: Documenso
|
||||
tags:
|
||||
- Tool
|
||||
- Tool
|
||||
type: website
|
||||
website: https://documenso.com/
|
||||
document: https://docs.documenso.com/docs/self-hosting
|
||||
github: https://github.com/documenso/documenso
|
||||
shortDescZh: 开源文档签署平台
|
||||
shortDescEn: Open-source document signing platform
|
||||
crossVersionUpdate: true
|
||||
limit: 0
|
||||
architectures:
|
||||
- amd64
|
||||
- arm64
|
||||
description:
|
||||
en: Open-source document signing platform
|
||||
zh: 开源文档签署平台
|
||||
@@ -19,14 +28,3 @@ additionalProperties:
|
||||
ru: Платформа с открытым кодом для подписания документов
|
||||
ms: Platform sumber terbuka untuk menandatangani dokumen
|
||||
pt-br: Plataforma de codigo aberto para assinatura de documentos
|
||||
type: website
|
||||
crossVersionUpdate: true
|
||||
limit: 0
|
||||
recommend: 0
|
||||
website: https://documenso.com/
|
||||
github: https://github.com/documenso/documenso
|
||||
document: https://docs.documenso.com/docs/self-hosting
|
||||
memoryRequired: 2048
|
||||
architectures:
|
||||
- amd64
|
||||
- arm64
|
||||
|
||||
@@ -1,23 +0,0 @@
|
||||
CONTAINER_NAME=documenso
|
||||
PANEL_APP_BIND_ADDRESS=127.0.0.1
|
||||
PANEL_APP_PORT_HTTP=3000
|
||||
NEXT_PUBLIC_WEBAPP_URL=http://127.0.0.1:3000
|
||||
PANEL_DB_TYPE=postgresql
|
||||
PANEL_DB_HOST=postgresql
|
||||
PANEL_DB_PORT=5432
|
||||
PANEL_DB_NAME=documenso
|
||||
PANEL_DB_USER=documenso
|
||||
PANEL_DB_USER_PASSWORD=change-me
|
||||
NEXT_PRIVATE_DATABASE_URL=generate
|
||||
NEXTAUTH_SECRET=generate
|
||||
NEXT_PRIVATE_ENCRYPTION_KEY=generate
|
||||
NEXT_PRIVATE_ENCRYPTION_SECONDARY_KEY=generate
|
||||
SIGNING_PASSPHRASE=generate
|
||||
SMTP_HOST=smtp.example.com
|
||||
SMTP_PORT=587
|
||||
SMTP_SECURE=false
|
||||
SMTP_USERNAME=
|
||||
SMTP_PASSWORD=
|
||||
SMTP_FROM_NAME=Documenso
|
||||
SMTP_FROM_ADDRESS=documenso@example.com
|
||||
DISABLE_SIGNUP=false
|
||||
@@ -1,379 +0,0 @@
|
||||
additionalProperties:
|
||||
formFields:
|
||||
- default: 127.0.0.1
|
||||
edit: true
|
||||
envKey: PANEL_APP_BIND_ADDRESS
|
||||
labelEn: Bind Address
|
||||
labelZh: 绑定地址
|
||||
label:
|
||||
en: Bind Address
|
||||
zh: 绑定地址
|
||||
zh-Hant: 綁定位址
|
||||
ja: バインドアドレス
|
||||
ko: 바인드 주소
|
||||
ru: Адрес привязки
|
||||
ms: Alamat ikatan
|
||||
pt-br: Endereco de vinculacao
|
||||
required: true
|
||||
type: text
|
||||
- default: 3000
|
||||
edit: true
|
||||
envKey: PANEL_APP_PORT_HTTP
|
||||
labelEn: HTTP Port
|
||||
labelZh: HTTP 端口
|
||||
label:
|
||||
en: HTTP Port
|
||||
zh: HTTP 端口
|
||||
zh-Hant: HTTP 連接埠
|
||||
ja: HTTP ポート
|
||||
ko: HTTP 포트
|
||||
ru: HTTP-порт
|
||||
ms: Port HTTP
|
||||
pt-br: Porta HTTP
|
||||
required: true
|
||||
rule: paramPort
|
||||
type: number
|
||||
- default: http://127.0.0.1:3000
|
||||
edit: true
|
||||
envKey: NEXT_PUBLIC_WEBAPP_URL
|
||||
labelEn: Public URL
|
||||
labelZh: 公开访问地址
|
||||
label:
|
||||
en: Public URL
|
||||
zh: 公开访问地址
|
||||
zh-Hant: 公開存取網址
|
||||
ja: 公開 URL
|
||||
ko: 공개 URL
|
||||
ru: Публичный URL
|
||||
ms: URL awam
|
||||
pt-br: URL publica
|
||||
required: true
|
||||
type: text
|
||||
- default: postgresql
|
||||
envKey: PANEL_DB_TYPE
|
||||
labelEn: Database Runtime
|
||||
labelZh: 数据库运行环境
|
||||
label:
|
||||
en: Database Runtime
|
||||
zh: 数据库运行环境
|
||||
zh-Hant: 資料庫執行環境
|
||||
ja: データベース実行環境
|
||||
ko: 데이터베이스 런타임
|
||||
ru: Среда базы данных
|
||||
ms: Masa jalan pangkalan data
|
||||
pt-br: Ambiente de banco de dados
|
||||
required: true
|
||||
type: apps
|
||||
values:
|
||||
- label: PostgreSQL
|
||||
value: postgresql
|
||||
child:
|
||||
default: ""
|
||||
envKey: PANEL_DB_HOST
|
||||
labelEn: PostgreSQL Service
|
||||
labelZh: PostgreSQL 服务
|
||||
label:
|
||||
en: PostgreSQL Service
|
||||
zh: PostgreSQL 服务
|
||||
zh-Hant: PostgreSQL 服務
|
||||
ja: PostgreSQL サービス
|
||||
ko: PostgreSQL 서비스
|
||||
ru: Сервис PostgreSQL
|
||||
ms: Perkhidmatan PostgreSQL
|
||||
pt-br: Servico PostgreSQL
|
||||
required: true
|
||||
type: service
|
||||
- default: 5432
|
||||
edit: true
|
||||
envKey: PANEL_DB_PORT
|
||||
labelEn: Database Port
|
||||
labelZh: 数据库端口
|
||||
label:
|
||||
en: Database Port
|
||||
zh: 数据库端口
|
||||
zh-Hant: 資料庫連接埠
|
||||
ja: データベースポート
|
||||
ko: 데이터베이스 포트
|
||||
ru: Порт базы данных
|
||||
ms: Port pangkalan data
|
||||
pt-br: Porta do banco de dados
|
||||
required: true
|
||||
rule: paramPort
|
||||
type: number
|
||||
- default: documenso
|
||||
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: documenso
|
||||
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: Usuario do banco de dados
|
||||
random: true
|
||||
required: true
|
||||
rule: paramCommon
|
||||
type: text
|
||||
- default: change-me
|
||||
edit: true
|
||||
envKey: PANEL_DB_USER_PASSWORD
|
||||
labelEn: Database Password
|
||||
labelZh: 数据库密码
|
||||
label:
|
||||
en: Database Password
|
||||
zh: 数据库密码
|
||||
zh-Hant: 資料庫密碼
|
||||
ja: データベースパスワード
|
||||
ko: 데이터베이스 비밀번호
|
||||
ru: Пароль базы данных
|
||||
ms: Kata laluan pangkalan data
|
||||
pt-br: Senha do banco de dados
|
||||
required: true
|
||||
rule: paramComplexity
|
||||
type: password
|
||||
- default: smtp.example.com
|
||||
edit: true
|
||||
envKey: SMTP_HOST
|
||||
labelEn: SMTP Host
|
||||
labelZh: SMTP 主机
|
||||
label:
|
||||
en: SMTP Host
|
||||
zh: SMTP 主机
|
||||
zh-Hant: SMTP 主機
|
||||
ja: SMTP ホスト
|
||||
ko: SMTP 호스트
|
||||
ru: SMTP-сервер
|
||||
ms: Hos SMTP
|
||||
pt-br: Servidor SMTP
|
||||
required: true
|
||||
type: text
|
||||
- default: 587
|
||||
edit: true
|
||||
envKey: SMTP_PORT
|
||||
labelEn: SMTP Port
|
||||
labelZh: SMTP 端口
|
||||
label:
|
||||
en: SMTP Port
|
||||
zh: SMTP 端口
|
||||
zh-Hant: SMTP 連接埠
|
||||
ja: SMTP ポート
|
||||
ko: SMTP 포트
|
||||
ru: SMTP-порт
|
||||
ms: Port SMTP
|
||||
pt-br: Porta SMTP
|
||||
required: true
|
||||
rule: paramPort
|
||||
type: number
|
||||
- default: "false"
|
||||
edit: true
|
||||
envKey: SMTP_SECURE
|
||||
labelEn: SMTP Implicit TLS
|
||||
labelZh: SMTP 隐式 TLS
|
||||
label:
|
||||
en: SMTP Implicit TLS
|
||||
zh: SMTP 隐式 TLS
|
||||
zh-Hant: SMTP 隱式 TLS
|
||||
ja: SMTP 暗黙 TLS
|
||||
ko: SMTP 암시적 TLS
|
||||
ru: Неявный TLS SMTP
|
||||
ms: TLS tersirat SMTP
|
||||
pt-br: TLS implicito SMTP
|
||||
required: true
|
||||
type: select
|
||||
values:
|
||||
- label: "false"
|
||||
value: "false"
|
||||
- label: "true"
|
||||
value: "true"
|
||||
- default: ""
|
||||
edit: true
|
||||
envKey: SMTP_USERNAME
|
||||
labelEn: SMTP Username
|
||||
labelZh: SMTP 用户名
|
||||
label:
|
||||
en: SMTP Username
|
||||
zh: SMTP 用户名
|
||||
zh-Hant: SMTP 使用者名稱
|
||||
ja: SMTP ユーザー名
|
||||
ko: SMTP 사용자 이름
|
||||
ru: Имя пользователя SMTP
|
||||
ms: Nama pengguna SMTP
|
||||
pt-br: Usuario SMTP
|
||||
required: false
|
||||
type: text
|
||||
- default: ""
|
||||
edit: true
|
||||
envKey: SMTP_PASSWORD
|
||||
labelEn: SMTP Password
|
||||
labelZh: SMTP 密码
|
||||
label:
|
||||
en: SMTP Password
|
||||
zh: SMTP 密码
|
||||
zh-Hant: SMTP 密碼
|
||||
ja: SMTP パスワード
|
||||
ko: SMTP 비밀번호
|
||||
ru: Пароль SMTP
|
||||
ms: Kata laluan SMTP
|
||||
pt-br: Senha SMTP
|
||||
required: false
|
||||
type: password
|
||||
- default: Documenso
|
||||
edit: true
|
||||
envKey: SMTP_FROM_NAME
|
||||
labelEn: Email Sender Name
|
||||
labelZh: 邮件发件人名称
|
||||
label:
|
||||
en: Email Sender Name
|
||||
zh: 邮件发件人名称
|
||||
zh-Hant: 郵件寄件者名稱
|
||||
ja: メール送信者名
|
||||
ko: 이메일 발신자 이름
|
||||
ru: Имя отправителя
|
||||
ms: Nama penghantar e-mel
|
||||
pt-br: Nome do remetente
|
||||
required: true
|
||||
type: text
|
||||
- default: documenso@example.com
|
||||
edit: true
|
||||
envKey: SMTP_FROM_ADDRESS
|
||||
labelEn: Email Sender Address
|
||||
labelZh: 邮件发件人地址
|
||||
label:
|
||||
en: Email Sender Address
|
||||
zh: 邮件发件人地址
|
||||
zh-Hant: 郵件寄件者地址
|
||||
ja: メール送信元アドレス
|
||||
ko: 이메일 발신자 주소
|
||||
ru: Адрес отправителя
|
||||
ms: Alamat penghantar e-mel
|
||||
pt-br: Endereco do remetente
|
||||
required: true
|
||||
type: text
|
||||
- default: "false"
|
||||
edit: true
|
||||
envKey: DISABLE_SIGNUP
|
||||
labelEn: Disable New Signups
|
||||
labelZh: 禁止新用户注册
|
||||
label:
|
||||
en: Disable New Signups
|
||||
zh: 禁止新用户注册
|
||||
zh-Hant: 停用新使用者註冊
|
||||
ja: 新規登録を無効化
|
||||
ko: 신규 가입 비활성화
|
||||
ru: Запретить новые регистрации
|
||||
ms: Nyahdayakan pendaftaran baharu
|
||||
pt-br: Desativar novos cadastros
|
||||
required: true
|
||||
type: select
|
||||
values:
|
||||
- label: "false"
|
||||
value: "false"
|
||||
- label: "true"
|
||||
value: "true"
|
||||
- default: generate
|
||||
disabled: true
|
||||
edit: true
|
||||
envKey: NEXTAUTH_SECRET
|
||||
labelEn: Authentication Secret
|
||||
labelZh: 认证密钥
|
||||
label:
|
||||
en: Authentication Secret
|
||||
zh: 认证密钥
|
||||
zh-Hant: 驗證密鑰
|
||||
ja: 認証シークレット
|
||||
ko: 인증 비밀 키
|
||||
ru: Секрет аутентификации
|
||||
ms: Rahsia pengesahan
|
||||
pt-br: Segredo de autenticacao
|
||||
required: true
|
||||
type: password
|
||||
- default: generate
|
||||
disabled: true
|
||||
edit: true
|
||||
envKey: NEXT_PRIVATE_ENCRYPTION_KEY
|
||||
labelEn: Primary Encryption Key
|
||||
labelZh: 主加密密钥
|
||||
label:
|
||||
en: Primary Encryption Key
|
||||
zh: 主加密密钥
|
||||
zh-Hant: 主要加密金鑰
|
||||
ja: プライマリ暗号化キー
|
||||
ko: 기본 암호화 키
|
||||
ru: Основной ключ шифрования
|
||||
ms: Kunci penyulitan utama
|
||||
pt-br: Chave de criptografia primaria
|
||||
required: true
|
||||
type: password
|
||||
- default: generate
|
||||
disabled: true
|
||||
edit: true
|
||||
envKey: NEXT_PRIVATE_ENCRYPTION_SECONDARY_KEY
|
||||
labelEn: Secondary Encryption Key
|
||||
labelZh: 备用加密密钥
|
||||
label:
|
||||
en: Secondary Encryption Key
|
||||
zh: 备用加密密钥
|
||||
zh-Hant: 備用加密金鑰
|
||||
ja: セカンダリ暗号化キー
|
||||
ko: 보조 암호화 키
|
||||
ru: Резервный ключ шифрования
|
||||
ms: Kunci penyulitan sekunder
|
||||
pt-br: Chave de criptografia secundaria
|
||||
required: true
|
||||
type: password
|
||||
- default: generate
|
||||
disabled: true
|
||||
edit: true
|
||||
envKey: SIGNING_PASSPHRASE
|
||||
labelEn: Signing Certificate Passphrase
|
||||
labelZh: 签名证书密码
|
||||
label:
|
||||
en: Signing Certificate Passphrase
|
||||
zh: 签名证书密码
|
||||
zh-Hant: 簽署憑證密碼
|
||||
ja: 署名証明書パスフレーズ
|
||||
ko: 서명 인증서 암호
|
||||
ru: Пароль сертификата подписи
|
||||
ms: Frasa laluan sijil tandatangan
|
||||
pt-br: Senha do certificado de assinatura
|
||||
required: true
|
||||
type: password
|
||||
- default: generate
|
||||
disabled: true
|
||||
edit: true
|
||||
envKey: NEXT_PRIVATE_DATABASE_URL
|
||||
labelEn: Generated Database URL
|
||||
labelZh: 生成的数据库地址
|
||||
label:
|
||||
en: Generated Database URL
|
||||
zh: 生成的数据库地址
|
||||
zh-Hant: 產生的資料庫網址
|
||||
ja: 生成されたデータベース URL
|
||||
ko: 생성된 데이터베이스 URL
|
||||
ru: Сформированный URL базы данных
|
||||
ms: URL pangkalan data dijana
|
||||
pt-br: URL de banco de dados gerada
|
||||
required: true
|
||||
type: password
|
||||
@@ -1,152 +0,0 @@
|
||||
#!/usr/bin/env bash
|
||||
set -euo pipefail
|
||||
|
||||
ROOT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")/.." && pwd -P)"
|
||||
ENV_FILE="${ENV_FILE:-${ROOT_DIR}/.env}"
|
||||
DATA_DIR="${ROOT_DIR}/data"
|
||||
CERT_FILE="${DATA_DIR}/cert.p12"
|
||||
|
||||
fail() {
|
||||
printf '%s\n' "$1" >&2
|
||||
exit 1
|
||||
}
|
||||
|
||||
read_env_value() {
|
||||
local key="$1"
|
||||
local value=""
|
||||
value="$(sed -n "s/^${key}=//p" "$ENV_FILE" | tail -n 1)"
|
||||
case "$value" in
|
||||
\"*\") value="${value#\"}"; value="${value%\"}" ;;
|
||||
\'*\') value="${value#\'}"; value="${value%\'}" ;;
|
||||
esac
|
||||
printf '%s\n' "$value"
|
||||
}
|
||||
|
||||
set_env_value() {
|
||||
local key="$1"
|
||||
local value="$2"
|
||||
local temp_file
|
||||
temp_file="$(mktemp "${ROOT_DIR}/.documenso-env.tmp.XXXXXX")"
|
||||
awk -v key="$key" -v value="$value" '
|
||||
BEGIN { written = 0 }
|
||||
$0 ~ "^" key "=" {
|
||||
if (!written) {
|
||||
print key "=" value
|
||||
written = 1
|
||||
}
|
||||
next
|
||||
}
|
||||
{ print }
|
||||
END { if (!written) print key "=" value }
|
||||
' "$ENV_FILE" > "$temp_file"
|
||||
chmod 600 "$temp_file"
|
||||
mv -f -- "$temp_file" "$ENV_FILE"
|
||||
}
|
||||
|
||||
generate_secret() {
|
||||
local key="$1"
|
||||
local value
|
||||
value="$(read_env_value "$key")"
|
||||
if [[ -z "$value" || "$value" == generate ]]; then
|
||||
value="$(openssl rand -hex 32)"
|
||||
set_env_value "$key" "$value"
|
||||
fi
|
||||
[[ ${#value} -ge 32 ]] || fail "$key must contain at least 32 characters"
|
||||
}
|
||||
|
||||
urlencode() {
|
||||
local LC_ALL=C
|
||||
local input="$1"
|
||||
local output=""
|
||||
local character encoded
|
||||
local index
|
||||
for ((index = 0; index < ${#input}; index++)); do
|
||||
character="${input:index:1}"
|
||||
case "$character" in
|
||||
[A-Za-z0-9.~_-]) output+="$character" ;;
|
||||
*) printf -v encoded '%%%02X' "'$character"; output+="$encoded" ;;
|
||||
esac
|
||||
done
|
||||
printf '%s' "$output"
|
||||
}
|
||||
|
||||
secure_certificate_file() {
|
||||
local current_uid owner_uid
|
||||
current_uid="$(id -u)"
|
||||
if [[ "$current_uid" == 0 ]]; then
|
||||
chown 1001:65533 -- "$CERT_FILE"
|
||||
elif [[ "$current_uid" == 1001 ]]; then
|
||||
owner_uid="$(stat -c %u -- "$CERT_FILE")"
|
||||
[[ "$owner_uid" == 1001 ]] || fail "the signing certificate must be owned by UID 1001"
|
||||
[[ -r "$CERT_FILE" ]] || fail "the signing certificate is not readable by UID 1001"
|
||||
else
|
||||
fail "init.sh must run as root or UID 1001"
|
||||
fi
|
||||
chmod 0400 -- "$CERT_FILE"
|
||||
}
|
||||
|
||||
[[ -f "$ENV_FILE" ]] || fail "$ENV_FILE not found"
|
||||
[[ ! -L "$ENV_FILE" ]] || fail "$ENV_FILE must not be a symbolic link"
|
||||
command -v openssl >/dev/null 2>&1 || fail "openssl is required"
|
||||
|
||||
db_host="$(read_env_value PANEL_DB_HOST)"
|
||||
db_port="$(read_env_value PANEL_DB_PORT)"
|
||||
db_name="$(read_env_value PANEL_DB_NAME)"
|
||||
db_user="$(read_env_value PANEL_DB_USER)"
|
||||
db_password="$(read_env_value PANEL_DB_USER_PASSWORD)"
|
||||
[[ "$db_host" =~ ^[A-Za-z0-9][A-Za-z0-9._-]*$ ]] || fail "PANEL_DB_HOST is invalid"
|
||||
if [[ ! "$db_port" =~ ^[0-9]+$ ]] || ((db_port < 1 || db_port > 65535)); then
|
||||
fail "PANEL_DB_PORT is invalid"
|
||||
fi
|
||||
[[ "$db_name" =~ ^[A-Za-z0-9_][A-Za-z0-9_-]*$ ]] || fail "PANEL_DB_NAME is invalid"
|
||||
[[ "$db_user" =~ ^[A-Za-z0-9_][A-Za-z0-9_.-]*$ ]] || fail "PANEL_DB_USER is invalid"
|
||||
[[ -n "$db_password" && "$db_password" != change-me ]] || fail "PANEL_DB_USER_PASSWORD must be configured"
|
||||
|
||||
public_url="$(read_env_value NEXT_PUBLIC_WEBAPP_URL)"
|
||||
public_url_pattern='^https?://[A-Za-z0-9._~:/?&=%+-]+$'
|
||||
[[ "$public_url" =~ $public_url_pattern ]] || fail "NEXT_PUBLIC_WEBAPP_URL must be a complete HTTP(S) URL"
|
||||
smtp_host="$(read_env_value SMTP_HOST)"
|
||||
smtp_port="$(read_env_value SMTP_PORT)"
|
||||
smtp_secure="$(read_env_value SMTP_SECURE)"
|
||||
smtp_from_address="$(read_env_value SMTP_FROM_ADDRESS)"
|
||||
[[ "$smtp_host" =~ ^[A-Za-z0-9][A-Za-z0-9._-]*$ && "$smtp_host" != smtp.example.com ]] || fail "SMTP_HOST must name a working SMTP service"
|
||||
if [[ ! "$smtp_port" =~ ^[0-9]+$ ]] || ((smtp_port < 1 || smtp_port > 65535)); then
|
||||
fail "SMTP_PORT is invalid"
|
||||
fi
|
||||
[[ "$smtp_secure" == true || "$smtp_secure" == false ]] || fail "SMTP_SECURE must be true or false"
|
||||
[[ "$smtp_from_address" =~ ^[^[:space:]@]+@[^[:space:]@]+$ ]] || fail "SMTP_FROM_ADDRESS is invalid"
|
||||
|
||||
chmod 600 "$ENV_FILE"
|
||||
generate_secret NEXTAUTH_SECRET
|
||||
generate_secret NEXT_PRIVATE_ENCRYPTION_KEY
|
||||
generate_secret NEXT_PRIVATE_ENCRYPTION_SECONDARY_KEY
|
||||
|
||||
encoded_user="$(urlencode "$db_user")"
|
||||
encoded_password="$(urlencode "$db_password")"
|
||||
set_env_value NEXT_PRIVATE_DATABASE_URL "postgresql://${encoded_user}:${encoded_password}@${db_host}:${db_port}/${db_name}"
|
||||
|
||||
install -d -m 0700 "$DATA_DIR"
|
||||
passphrase="$(read_env_value SIGNING_PASSPHRASE)"
|
||||
[[ ! -L "$CERT_FILE" ]] || fail "$CERT_FILE must not be a symbolic link"
|
||||
if [[ -s "$CERT_FILE" ]]; then
|
||||
[[ -n "$passphrase" && "$passphrase" != generate ]] || fail "SIGNING_PASSPHRASE is missing for the existing certificate"
|
||||
CERT_PASS="$passphrase" openssl pkcs12 -in "$CERT_FILE" -passin env:CERT_PASS -noout >/dev/null 2>&1 || fail "the existing signing certificate or passphrase is invalid"
|
||||
secure_certificate_file
|
||||
else
|
||||
if [[ -z "$passphrase" || "$passphrase" == generate ]]; then
|
||||
passphrase="$(openssl rand -hex 32)"
|
||||
set_env_value SIGNING_PASSPHRASE "$passphrase"
|
||||
fi
|
||||
temp_dir="$(mktemp -d "${ROOT_DIR}/.documenso-cert.tmp.XXXXXX")"
|
||||
trap 'rm -rf -- "$temp_dir"' EXIT
|
||||
openssl req -new -newkey rsa:3072 -x509 -sha256 -nodes -days 3650 \
|
||||
-subj "/CN=Documenso 1Panel Signing" \
|
||||
-keyout "${temp_dir}/private.key" -out "${temp_dir}/certificate.crt" >/dev/null 2>&1
|
||||
CERT_PASS="$passphrase" openssl pkcs12 -export \
|
||||
-inkey "${temp_dir}/private.key" -in "${temp_dir}/certificate.crt" \
|
||||
-out "${temp_dir}/cert.p12" -passout env:CERT_PASS
|
||||
install -m 0400 "${temp_dir}/cert.p12" "$CERT_FILE"
|
||||
secure_certificate_file
|
||||
rm -rf -- "$temp_dir"
|
||||
trap - EXIT
|
||||
fi
|
||||
@@ -1,2 +0,0 @@
|
||||
#!/usr/bin/env bash
|
||||
set -euo pipefail
|
||||
@@ -1,4 +0,0 @@
|
||||
#!/usr/bin/env bash
|
||||
set -euo pipefail
|
||||
|
||||
"$(dirname "$0")/init.sh"
|
||||
Binary file not shown.
|
Before Width: | Height: | Size: 8.0 KiB After Width: | Height: | Size: 5.6 KiB |
Reference in New Issue
Block a user