# yaml-language-server: $schema=https://schema.zeabur.app/template.json
apiVersion: zeabur.com/v1
kind: Template
metadata:
    name: Nomad
spec:
    description: |
        Nomad is a flexible workload orchestrator by HashiCorp that deploys and manages containers, binaries, and VMs across on-prem and cloud. Features a built-in web UI for job management, allocation monitoring, and cluster overview. Single binary with embedded storage — no external database required.
    coverImage: https://raw.githubusercontent.com/hashicorp/nomad/main/.doc/screenshot.png
    icon: https://avatars.githubusercontent.com/u/761456
    variables:
        - key: PUBLIC_DOMAIN
          type: DOMAIN
          name: Domain
          description: The domain to access Nomad UI
    tags:
        - Tool
        - DevOps
    readme: |
        # Nomad

        A flexible workload orchestrator by HashiCorp for deploying containers, binaries, Java apps, and VMs. Ships as a single binary with embedded Raft storage and a built-in web UI.

        ## What You Can Do After Deployment

        1. **Visit your domain** — the Nomad web UI loads immediately in dev mode (no login required)
        2. **Explore the dashboard** — view cluster topology, server status, and resource allocation
        3. **Submit jobs** — define and submit job specifications through the UI or API
        4. **Monitor allocations** — track running, pending, and failed allocations in real-time
        5. **View logs** — stream stdout/stderr from running allocations directly in the UI
        6. **Inspect job definitions** — view and edit HCL/JSON job specifications
        7. **Use the API** — interact with the full Nomad HTTP API: `curl https://YOUR_DOMAIN/v1/jobs`

        ## Key Features

        - Multi-task, multi-driver workload orchestration
        - Built-in web UI with job management and monitoring
        - Bin-packing scheduler for efficient resource utilization
        - Multi-region and multi-datacenter federation
        - Service discovery and load balancing
        - Rolling updates and canary deployments
        - ACL system for access control
        - Namespace isolation

        Note: This runs in dev mode (in-memory, single-node). Suitable for exploration and development. Job execution requiring Docker is not available in this container environment.

        ## License

        BUSL-1.1 — [GitHub](https://github.com/hashicorp/nomad)
    services:
        - name: nomad
          icon: https://avatars.githubusercontent.com/u/761456
          template: PREBUILT_V2
          spec:
            source:
                image: hashicorp/nomad:1.11
                command:
                    - nomad
                    - agent
                    - -dev
                    - -bind=0.0.0.0
            ports:
                - id: web
                  port: 4646
                  type: HTTP
            volumes:
                - id: nomad-data
                  dir: /nomad/data
            env:
                TZ:
                    default: UTC
            healthCheck:
                type: HTTP
                port: web
                http:
                    path: /v1/status/leader
          domainKey: PUBLIC_DOMAIN
localization:
    es-ES:
        description: |
            Nomad es un orquestador de cargas de trabajo flexible de HashiCorp para desplegar y gestionar contenedores, binarios y VMs. Incluye interfaz web, sin base de datos externa necesaria.
        variables:
            - key: PUBLIC_DOMAIN
              type: STRING
              name: Dominio
              description: El dominio para acceder a Nomad UI
        readme: |
            # Nomad

            Orquestador de cargas de trabajo flexible de HashiCorp. Despliega contenedores, binarios, apps Java y VMs.

            ## Que puedes hacer despues del despliegue

            1. **Visita tu dominio** — la interfaz web de Nomad se carga directamente (sin login en modo desarrollo)
            2. **Explora el dashboard** — revisa topologia del cluster, estado de servidores y asignacion de recursos
            3. **Envia jobs** — define y envia especificaciones de jobs mediante la UI o API
            4. **Monitorea asignaciones** — rastrea asignaciones en ejecucion, pendientes y fallidas en tiempo real
            5. **Ver logs** — transmite stdout/stderr de asignaciones en ejecucion directamente en la UI
            6. **Usa la API** — interactua con la API HTTP de Nomad

            Nota: Se ejecuta en modo desarrollo (en memoria, nodo unico).

            ## Licencia

            BUSL-1.1 — [GitHub](https://github.com/hashicorp/nomad)
    id-ID:
        description: |
            Nomad adalah orkestrator workload fleksibel dari HashiCorp untuk deploy dan mengelola container, binary, dan VM. Dilengkapi web UI bawaan, tanpa perlu database eksternal.
        variables:
            - key: PUBLIC_DOMAIN
              type: STRING
              name: Domain
              description: Domain untuk mengakses Nomad UI
        readme: |
            # Nomad

            Orkestrator workload fleksibel dari HashiCorp. Deploy container, binary, aplikasi Java, dan VM.

            ## Apa yang bisa dilakukan setelah deploy

            1. **Buka domain** — Web UI Nomad langsung tampil (mode development tanpa login)
            2. **Jelajahi dashboard** — lihat topologi cluster, status server, dan alokasi resource
            3. **Submit job** — definisikan dan submit spesifikasi job melalui UI atau API
            4. **Monitor alokasi** — lacak alokasi yang berjalan, tertunda, dan gagal secara real-time
            5. **Lihat log** — streaming stdout/stderr alokasi langsung di UI
            6. **Gunakan API** — interaksi dengan Nomad HTTP API

            Catatan: Berjalan dalam mode development (in-memory, single-node).

            ## Lisensi

            BUSL-1.1 — [GitHub](https://github.com/hashicorp/nomad)
    ja-JP:
        description: |
            Nomad は HashiCorp の柔軟なワークロードオーケストレーターです。コンテナ、バイナリ、VM のデプロイと管理が可能。Web UI 内蔵、外部データベース不要。
        variables:
            - key: PUBLIC_DOMAIN
              type: STRING
              name: ドメイン
              description: Nomad UI にアクセスするためのドメイン
        readme: |
            # Nomad

            HashiCorp の柔軟なワークロードオーケストレーター。コンテナ、バイナリ、Java アプリ、VM をデプロイ。

            ## デプロイ後にできること

            1. **ドメインにアクセス** — Nomad Web UI がすぐに表示されます（開発モードではログイン不要）
            2. **ダッシュボード** — クラスタートポロジー、サーバーステータス、リソース割り当ての確認
            3. **ジョブ送信** — UI または API でジョブ仕様を定義・送信
            4. **アロケーション監視** — 実行中・保留中・失敗したアロケーションをリアルタイム追跡
            5. **ログ表示** — UI でアロケーションの stdout/stderr をストリーミング
            6. **API 利用** — Nomad HTTP API でやり取り

            注意：開発モード（インメモリ、シングルノード）で動作します。

            ## ライセンス

            BUSL-1.1 — [GitHub](https://github.com/hashicorp/nomad)
    ko-KR:
        description: |
            Nomad는 HashiCorp의 유연한 워크로드 오케스트레이터로 컨테이너, 바이너리, VM을 배포하고 관리합니다. Web UI 내장, 외부 데이터베이스 불필요.
        variables:
            - key: PUBLIC_DOMAIN
              type: STRING
              name: 도메인
              description: Nomad UI에 접속할 도메인
        readme: |
            # Nomad

            HashiCorp의 유연한 워크로드 오케스트레이터. 컨테이너, 바이너리, Java 앱, VM 배포.

            ## 배포 후 할 수 있는 것

            1. **도메인 접속** — Nomad Web UI가 바로 로드됩니다 (개발 모드에서는 로그인 불필요)
            2. **대시보드 탐색** — 클러스터 토폴로지, 서버 상태, 리소스 할당 확인
            3. **잡 제출** — UI 또는 API로 잡 사양 정의 및 제출
            4. **할당 모니터링** — 실행 중, 대기 중, 실패한 할당을 실시간 추적
            5. **로그 보기** — UI에서 할당의 stdout/stderr 스트리밍
            6. **API 사용** — Nomad HTTP API로 상호작용

            참고: 개발 모드(인메모리, 단일 노드)로 실행됩니다.

            ## 라이선스

            BUSL-1.1 — [GitHub](https://github.com/hashicorp/nomad)
    th-TH:
        description: |
            Nomad เป็นตัวจัดการ workload ที่ยืดหยุ่นจาก HashiCorp สำหรับ deploy และจัดการ container, binary และ VM มี Web UI ในตัว ไม่ต้องการฐานข้อมูลภายนอก
        variables:
            - key: PUBLIC_DOMAIN
              type: STRING
              name: โดเมน
              description: โดเมนสำหรับเข้าถึง Nomad UI
        readme: |
            # Nomad

            ตัวจัดการ workload ที่ยืดหยุ่นจาก HashiCorp สำหรับ deploy container, binary, แอป Java และ VM

            ## สิ่งที่ทำได้หลังจากติดตั้ง

            1. **เข้าสู่โดเมน** — Web UI ของ Nomad โหลดทันที (โหมด development ไม่ต้องเข้าสู่ระบบ)
            2. **สำรวจ dashboard** — ดู topology ของ cluster, สถานะ server และการจัดสรร resource
            3. **ส่ง job** — กำหนดและส่ง job specification ผ่าน UI หรือ API
            4. **ตรวจสอบ allocation** — ติดตาม allocation ที่กำลังทำงาน, รอดำเนินการ และล้มเหลวแบบ real-time
            5. **ดู log** — สตรีม stdout/stderr ของ allocation โดยตรงใน UI
            6. **ใช้ API** — โต้ตอบกับ Nomad HTTP API

            หมายเหตุ: ทำงานในโหมด development (in-memory, single-node)

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

            BUSL-1.1 — [GitHub](https://github.com/hashicorp/nomad)
    zh-CN:
        description: |
            Nomad 是 HashiCorp 的弹性工作负载编排器，可部署和管理容器、二进制文件与虚拟机。内置 Web UI 用于任务管理与集群监控。单一二进制文件，内嵌存储，无需外部数据库。
        variables:
            - key: PUBLIC_DOMAIN
              type: STRING
              name: 域名
              description: 访问 Nomad UI 的域名
        readme: |
            # Nomad

            HashiCorp 的弹性工作负载编排器，部署容器、二进制文件、Java 应用与虚拟机。单一二进制文件，内嵌 Raft 存储与 Web UI。

            ## 部署后可以做什么

            1. **打开域名** — Nomad Web UI 直接加载（开发模式无需登录）
            2. **探索仪表板** — 查看集群拓扑、服务器状态与资源分配
            3. **提交任务** — 通过 UI 或 API 定义并提交 Job 规格
            4. **监控分配** — 实时追踪运行中、等待中与失败的 Allocation
            5. **查看日志** — 在 UI 中直接流式查看 Allocation 日志
            6. **使用 API** — 通过 Nomad HTTP API 交互

            注意：此为开发模式（内存中、单节点），适合探索与开发。

            ## 授权

            BUSL-1.1 — [GitHub](https://github.com/hashicorp/nomad)
    zh-TW:
        description: |
            Nomad 是 HashiCorp 的彈性工作負載編排器，可部署和管理容器、二進位檔與虛擬機。內建 Web UI 用於任務管理與叢集監控。單一執行檔，內嵌儲存，不需要外部資料庫。
        variables:
            - key: PUBLIC_DOMAIN
              type: STRING
              name: 網域
              description: 存取 Nomad UI 的網域
        readme: |
            # Nomad

            HashiCorp 的彈性工作負載編排器，可部署容器、二進位檔、Java 應用與虛擬機。單一執行檔，內嵌 Raft 儲存與 Web UI。

            ## 部署後可以做什麼

            1. **開啟網域** — Nomad Web UI 直接載入（開發模式無需登入）
            2. **探索儀表板** — 查看叢集拓撲、伺服器狀態與資源分配
            3. **提交任務** — 透過 UI 或 API 定義並提交 Job 規格
            4. **監控分配** — 即時追蹤運行中、等待中與失敗的 Allocation
            5. **查看日誌** — 在 UI 中直接串流 Allocation 的 stdout/stderr
            6. **檢視 Job 定義** — 查看和編輯 HCL/JSON 任務規格
            7. **使用 API** — 透過 Nomad HTTP API 互動

            注意：此為開發模式（記憶體內、單節點），適合探索與開發。容器環境中不支援需要 Docker 的 Job 執行。

            ## 授權

            BUSL-1.1 — [GitHub](https://github.com/hashicorp/nomad)
