# 🚀 Deployment Guide Dokumen ini memuat panduan untuk men-*deploy* aplikasi **GoPrint Service General** di lingkungan *Staging* maupun *Production*. ## 1. Prerequisites Pastikan infrastruktur/server telah memiliki: * **Go** versi 1.21 atau lebih tinggi. * **PostgreSQL / MySQL** (sebagai *Primary Database*). * **Redis** (untuk mekanisme *Caching*). * **MinIO / AWS S3** (Opsional, untuk penyimpanan berkas). * Akses jaringan keluar (Koneksi ke `https://apijkn.bpjs-kesehatan.go.id` dan `https://api-satusehat.kemkes.go.id`). ## 2. Configuration (`config.yaml`) Aplikasi menggunakan Viper untuk memuat konfigurasi. Siapkan `config.yaml` di *root* proyek. Beberapa nilai kunci yang harus disiapkan: ```yaml server: mode: "production" # development | production rest: enabled: true port: 8080 grpc: enabled: true port: 9090 databases: default: type: "postgres" host: "localhost" port: 5432 database: "simrs_db" username: "postgres" password: "securepassword" cache: enabled: true redis: host: "localhost" port: 6379 ``` ## 3. Build & Run (Bare-Metal) ```bash # Build binary go build -o service-general ./cmd/api/main.go # Jalankan sebagai background process atau Service (systemd) ./service-general ```