# yaml-language-server: $schema=https://schema.zeabur.app/template.json
apiVersion: zeabur.com/v1
kind: Template
metadata:
    name: Tigase
spec:
    description: |
        Tigase is a highly optimized and modular XMPP/Jabber server written in Java. It features a web-based setup wizard, embedded Apache Derby database, multi-user chat, file transfer, and supports clustering for high availability.
    coverImage: https://tigase.net/images/screenshots/tigase-admin.png
    icon: https://tigase.net/assets/tigase-logo.svg
    variables:
        - key: PUBLIC_DOMAIN
          type: DOMAIN
          name: Domain
          description: The domain to access Tigase XMPP Server
        - key: ADMIN_JID
          type: STRING
          name: Admin JID
          description: Admin user JID (e.g. admin@yourdomain.com)
        - key: ADMIN_PASSWORD
          type: STRING
          name: Admin Password
          description: Password for the admin account
    tags:
        - Communication
    readme: |
        # Tigase XMPP Server

        A highly optimized, extremely modular, and very flexible XMPP/Jabber server written in Java. Tigase includes an embedded Apache Derby database for zero-configuration deployment and a web-based setup interface.

        ## Getting Started

        1. **Open the setup page** at your domain on port 8080 — the web-based wizard guides initial configuration
        2. **Configure your admin account** — set the admin JID and password (or use the environment variables)
        3. **Complete the setup wizard** — select the embedded Derby database for simplicity
        4. **Restart the service** after setup completes
        5. **Connect XMPP clients** — use Conversations, Gajim, or any XMPP client on port 5222

        ## Key Features

        - Highly optimized for performance and scalability
        - Web-based setup wizard for easy initial configuration
        - Embedded Apache Derby database (no external DB required)
        - Multi-user chat (MUC) support
        - File transfer with HTTP upload
        - Message Archive Management (MAM)
        - Push notifications support
        - BOSH and WebSocket for web clients
        - Extensible with custom components and plugins
        - Clustering support for high availability

        ## Exposed Ports

        - **8080**: Web setup / HTTP API
        - **5222**: XMPP client connections (C2S)
        - **5269**: Server-to-server connections (S2S)
        - **5277**: Cluster connections
        - **5280**: BOSH connections
        - **5290**: WebSocket connections
        - **5223**: XMPP client connections (SSL)

        ## License

        GPL-3.0 — [GitHub](https://github.com/tigase/tigase-server)
    services:
        - name: tigase
          icon: https://tigase.net/assets/tigase-logo.svg
          template: PREBUILT_V2
          spec:
            source:
                image: tigase/tigase-xmpp-server:8.4.0
            ports:
                - id: web
                  port: 8080
                  type: HTTP
                - id: xmpp
                  port: 5222
                  type: TCP
                - id: s2s
                  port: 5269
                  type: TCP
            volumes:
                - id: data
                  dir: /home/tigase/tigase-server/data
                - id: logs
                  dir: /home/tigase/tigase-server/logs
            env:
                ADMIN_JID:
                    default: ${ADMIN_JID}
                ADMIN_PASSWORD:
                    default: ${ADMIN_PASSWORD}
            healthCheck:
                type: HTTP
                port: web
                http:
                    path: /
            portForwarding:
                enabled: true
          domainKey: PUBLIC_DOMAIN
localization:
    es-ES:
        description: |
            Tigase es un servidor XMPP/Jabber altamente optimizado y modular escrito en Java. Incluye asistente de configuracion web, base de datos Apache Derby integrada, chat multiusuario, transferencia de archivos y soporte de clustering.
        variables:
            - key: PUBLIC_DOMAIN
              type: STRING
              name: Dominio
              description: El dominio para acceder al servidor XMPP Tigase
            - key: ADMIN_JID
              type: STRING
              name: JID del administrador
              description: JID del usuario administrador (ej. admin@tudominio.com)
            - key: ADMIN_PASSWORD
              type: STRING
              name: Contrasena del administrador
              description: Contrasena para la cuenta de administrador
        readme: |
            # Tigase XMPP Server

            Servidor XMPP/Jabber altamente optimizado y modular escrito en Java. Base de datos Apache Derby integrada sin dependencias externas. Interfaz de configuracion web incluida.

            ## Primeros pasos

            1. **Abrir la pagina de configuracion** — acceder al asistente web en el puerto 8080
            2. **Configurar cuenta de administrador** — establecer JID y contrasena
            3. **Completar el asistente** — seleccionar Derby integrada
            4. **Reiniciar el servicio**
            5. **Conectar clientes XMPP** — puerto 5222

            ## Caracteristicas

            - Rendimiento altamente optimizado
            - Asistente de configuracion web
            - Base de datos Apache Derby integrada
            - Chat multiusuario (MUC)
            - Transferencia de archivos
            - Archivo de mensajes (MAM)
            - Soporte de clustering

            ## Licencia

            GPL-3.0 — [GitHub](https://github.com/tigase/tigase-server)
    id-ID:
        description: |
            Tigase adalah server XMPP/Jabber yang sangat dioptimalkan dan modular, ditulis dalam Java. Dilengkapi wizard pengaturan web, database Apache Derby bawaan, chat multi-pengguna, transfer file, dan dukungan clustering.
        variables:
            - key: PUBLIC_DOMAIN
              type: STRING
              name: Domain
              description: Domain untuk mengakses server XMPP Tigase
            - key: ADMIN_JID
              type: STRING
              name: JID Admin
              description: 'JID pengguna admin (contoh: admin@domain.com)'
            - key: ADMIN_PASSWORD
              type: STRING
              name: Password Admin
              description: Password untuk akun admin
        readme: |
            # Tigase XMPP Server

            Server XMPP/Jabber yang dioptimalkan dan modular, ditulis dalam Java. Database Apache Derby bawaan tanpa dependensi eksternal. Antarmuka pengaturan web disertakan.

            ## Memulai

            1. **Buka halaman pengaturan** — akses wizard web di port 8080
            2. **Konfigurasi akun admin** — atur JID dan password
            3. **Selesaikan wizard** — pilih Derby bawaan
            4. **Restart layanan**
            5. **Hubungkan klien XMPP** — port 5222

            ## Fitur

            - Performa yang sangat dioptimalkan
            - Wizard pengaturan web
            - Database Apache Derby bawaan
            - Chat multi-pengguna (MUC)
            - Transfer file
            - Arsip pesan (MAM)
            - Dukungan clustering

            ## Lisensi

            GPL-3.0 — [GitHub](https://github.com/tigase/tigase-server)
    ja-JP:
        description: |
            Tigase は Java で記述された高度に最適化されたモジュラー XMPP/Jabber サーバーです。Web セットアップウィザード、組み込み Apache Derby データベース、マルチユーザーチャット、ファイル転送、クラスタリングをサポート。
        variables:
            - key: PUBLIC_DOMAIN
              type: STRING
              name: ドメイン
              description: Tigase XMPP サーバーにアクセスするためのドメイン
            - key: ADMIN_JID
              type: STRING
              name: 管理者 JID
              description: 管理者ユーザー JID（例：admin@yourdomain.com）
            - key: ADMIN_PASSWORD
              type: STRING
              name: 管理者パスワード
              description: 管理者アカウントのパスワード
        readme: |
            # Tigase XMPP Server

            Java で記述された高性能でモジュラーな XMPP/Jabber サーバー。組み込み Apache Derby で外部データベース不要。Web セットアップインターフェース付き。

            ## はじめに

            1. **セットアップページを開く** — ポート 8080 で Web ウィザードにアクセス
            2. **管理者アカウントを設定** — JID とパスワードを設定
            3. **ウィザードを完了** — 組み込み Derby を選択
            4. **サービスを再起動**
            5. **XMPP クライアントで接続** — ポート 5222

            ## 主な機能

            - 高性能最適化
            - Web セットアップウィザード
            - 組み込み Apache Derby
            - マルチユーザーチャット (MUC)
            - ファイル転送
            - メッセージアーカイブ (MAM)
            - クラスタリングサポート

            ## ライセンス

            GPL-3.0 — [GitHub](https://github.com/tigase/tigase-server)
    ko-KR:
        description: |
            Tigase는 Java로 작성된 고도로 최적화된 모듈식 XMPP/Jabber 서버입니다. 웹 설정 마법사, 내장 Apache Derby 데이터베이스, 다중 사용자 채팅, 파일 전송, 클러스터링을 지원합니다.
        variables:
            - key: PUBLIC_DOMAIN
              type: STRING
              name: 도메인
              description: Tigase XMPP 서버에 접속할 도메인
            - key: ADMIN_JID
              type: STRING
              name: 관리자 JID
              description: '관리자 JID (예: admin@yourdomain.com)'
            - key: ADMIN_PASSWORD
              type: STRING
              name: 관리자 비밀번호
              description: 관리자 계정 비밀번호
        readme: |
            # Tigase XMPP Server

            Java로 작성된 고성능 모듈식 XMPP/Jabber 서버. 내장 Apache Derby로 외부 데이터베이스 불필요. 웹 설정 인터페이스 포함.

            ## 시작하기

            1. **설정 페이지 열기** — 포트 8080에서 웹 마법사 접속
            2. **관리자 계정 설정** — JID와 비밀번호 설정
            3. **마법사 완료** — 내장 Derby 선택
            4. **서비스 재시작**
            5. **XMPP 클라이언트 연결** — 포트 5222

            ## 주요 기능

            - 고성능 최적화
            - 웹 설정 마법사
            - 내장 Apache Derby
            - 다중 사용자 채팅 (MUC)
            - 파일 전송
            - 메시지 아카이브 (MAM)
            - 클러스터링 지원

            ## 라이선스

            GPL-3.0 — [GitHub](https://github.com/tigase/tigase-server)
    th-TH:
        description: |
            Tigase คือเซิร์ฟเวอร์ XMPP/Jabber ที่ได้รับการปรับแต่งสูงและเป็นโมดูลาร์ เขียนด้วย Java มีวิซาร์ดตั้งค่าบนเว็บ ฐานข้อมูล Apache Derby ในตัว แชทหลายผู้ใช้ ถ่ายโอนไฟล์ และรองรับคลัสเตอร์
        variables:
            - key: PUBLIC_DOMAIN
              type: STRING
              name: โดเมน
              description: โดเมนสำหรับเข้าถึงเซิร์ฟเวอร์ XMPP Tigase
            - key: ADMIN_JID
              type: STRING
              name: JID ผู้ดูแลระบบ
              description: JID ผู้ดูแลระบบ (เช่น admin@yourdomain.com)
            - key: ADMIN_PASSWORD
              type: STRING
              name: รหัสผ่านผู้ดูแลระบบ
              description: รหัสผ่านสำหรับบัญชีผู้ดูแลระบบ
        readme: |
            # Tigase XMPP Server

            เซิร์ฟเวอร์ XMPP/Jabber ประสิทธิภาพสูงที่เขียนด้วย Java มีฐานข้อมูล Apache Derby ในตัว ไม่ต้องพึ่งพาบริการภายนอก พร้อมอินเทอร์เฟซตั้งค่าบนเว็บ

            ## เริ่มต้นใช้งาน

            1. **เปิดหน้าตั้งค่า** — เข้าถึงวิซาร์ดเว็บที่พอร์ต 8080
            2. **ตั้งค่าบัญชีแอดมิน** — กำหนด JID และรหัสผ่าน
            3. **ทำวิซาร์ดให้เสร็จ** — เลือก Derby ในตัว
            4. **รีสตาร์ทบริการ**
            5. **เชื่อมต่อไคลเอนต์ XMPP** — พอร์ต 5222

            ## ฟีเจอร์หลัก

            - ประสิทธิภาพที่ปรับแต่งสูง
            - วิซาร์ดตั้งค่าบนเว็บ
            - ฐานข้อมูล Apache Derby ในตัว
            - แชทหลายผู้ใช้ (MUC)
            - ถ่ายโอนไฟล์
            - จัดเก็บข้อความ (MAM)
            - รองรับคลัสเตอร์

            ## สัญญาอนุญาต

            GPL-3.0 — [GitHub](https://github.com/tigase/tigase-server)
    zh-CN:
        description: |
            Tigase 是一款以 Java 编写、高度优化且模块化的 XMPP/Jabber 服务器。具备网页设置向导、嵌入式 Apache Derby 数据库、多人聊天、文件传输，并支持集群高可用。
        variables:
            - key: PUBLIC_DOMAIN
              type: STRING
              name: 域名
              description: 访问 Tigase XMPP 服务器的域名
            - key: ADMIN_JID
              type: STRING
              name: 管理员 JID
              description: 管理员用户 JID（例如 admin@yourdomain.com）
            - key: ADMIN_PASSWORD
              type: STRING
              name: 管理员密码
              description: 管理员账号密码
        readme: |
            # Tigase XMPP Server

            以 Java 编写、高度优化且极具灵活性的 XMPP/Jabber 服务器。内置 Apache Derby 嵌入式数据库，零配置部署，并提供网页设置界面。

            ## 开始使用

            1. **打开设置页面** — 通过 8080 端口访问网页设置向导
            2. **配置管理员账号** — 设置管理员 JID 和密码
            3. **完成设置向导** — 选择嵌入式 Derby 数据库
            4. **重启服务** — 设置完成后重启
            5. **连接 XMPP 客户端** — 使用 Conversations、Gajim 等连接至 5222 端口

            ## 主要功能

            - 高度优化的性能
            - 网页设置向导
            - 嵌入式 Apache Derby 数据库
            - 多人聊天 (MUC)
            - 文件传输
            - 消息归档管理 (MAM)
            - 推送通知
            - BOSH 和 WebSocket
            - 集群高可用

            ## 许可证

            GPL-3.0 — [GitHub](https://github.com/tigase/tigase-server)
    zh-TW:
        description: |
            Tigase 是一款以 Java 編寫、高度優化且模組化的 XMPP/Jabber 伺服器。具備網頁設定精靈、嵌入式 Apache Derby 資料庫、多人聊天、檔案傳輸，並支援叢集高可用性。
        variables:
            - key: PUBLIC_DOMAIN
              type: STRING
              name: 網域
              description: 存取 Tigase XMPP 伺服器的網域
            - key: ADMIN_JID
              type: STRING
              name: 管理員 JID
              description: 管理員使用者 JID（例如 admin@yourdomain.com）
            - key: ADMIN_PASSWORD
              type: STRING
              name: 管理員密碼
              description: 管理員帳號密碼
        readme: |
            # Tigase XMPP Server

            以 Java 編寫、高度優化且極具彈性的 XMPP/Jabber 伺服器。內建 Apache Derby 嵌入式資料庫，零設定部署，並提供網頁設定介面。

            ## 開始使用

            1. **開啟設定頁面** — 透過 8080 連接埠存取網頁設定精靈
            2. **設定管理員帳號** — 設定管理員 JID 和密碼
            3. **完成設定精靈** — 選擇嵌入式 Derby 資料庫
            4. **重啟服務** — 設定完成後重啟
            5. **連接 XMPP 客戶端** — 使用 Conversations、Gajim 等連接至 5222 連接埠

            ## 主要功能

            - 高度優化的效能
            - 網頁設定精靈
            - 嵌入式 Apache Derby 資料庫
            - 多人聊天 (MUC)
            - 檔案傳輸
            - 訊息歸檔管理 (MAM)
            - 推播通知
            - BOSH 和 WebSocket
            - 叢集高可用性

            ## 授權

            GPL-3.0 — [GitHub](https://github.com/tigase/tigase-server)
