{"id":1391,"date":"2026-08-27T20:19:24","date_gmt":"2026-08-27T13:19:24","guid":{"rendered":"https:\/\/komunitech.com\/blog\/?p=1391"},"modified":"2026-08-27T20:19:24","modified_gmt":"2026-08-27T13:19:24","slug":"cara-install-9router-di-vps-dengan-docker-panduan-lengkap-2026","status":"publish","type":"post","link":"https:\/\/komunitech.com\/blog\/tutorial\/cara-install-9router-di-vps-dengan-docker-panduan-lengkap-2026\/","title":{"rendered":"Cara Install 9Router di VPS dengan Docker (Panduan Lengkap 2026)"},"content":{"rendered":"<p><strong>tl;dr:<\/strong> 9Router bisa dipasang di VPS pakai Docker dalam satu perintah, jalan di <strong>port 20128<\/strong>, dan datanya aman selama kamu mount volume dengan benar. Spesifikasi minimum: <strong>Ubuntu 22.04\/24.04, 1 vCPU, RAM 2 GB<\/strong>. Estimasi waktu 15-20 menit. Satu hal yang paling sering dilewatkan tutorial lain: <strong>jangan pernah expose port 20128 langsung ke internet<\/strong> \u2014 siapa pun yang menemukannya bisa memakai API key kamu, dan tagihannya jadi tanggunganmu.<\/p>\n<p>9Router adalah AI Gateway yang menyambungkan tool coding kamu (Claude Code, Cursor, Cline, Codex, Copilot) ke banyak penyedia model AI lewat satu endpoint, lengkap dengan fallback otomatis saat kuota satu penyedia habis. Kalau kamu belum kenal cara kerjanya atau masih membandingkan dengan opsi lain, baca dulu <a href=\"https:\/\/komunitech.com\/blog\/riset\/openrouter-vs-9router-panduan-memilih-ai-gateway-router-2026\/\">perbandingan OpenRouter vs 9Router<\/a>. Panduan ini fokus ke satu hal: memasangnya di VPS supaya bisa diakses dari mana saja.<\/p>\n<div id=\"ez-toc-container\" class=\"ez-toc-v2_0_86 ez-toc-wrap-center counter-hierarchy ez-toc-counter ez-toc-light-blue ez-toc-container-direction\">\n<label for=\"ez-toc-cssicon-toggle-item-6a91b889cc40d\" class=\"ez-toc-cssicon-toggle-label\"><span class=\"ez-toc-cssicon\"><span class=\"eztoc-hide\" style=\"display:none;\">Toggle<\/span><span class=\"ez-toc-icon-toggle-span\"><svg style=\"fill: #999;color:#999\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" class=\"list-377408\" width=\"20px\" height=\"20px\" viewBox=\"0 0 24 24\" fill=\"none\"><path d=\"M6 6H4v2h2V6zm14 0H8v2h12V6zM4 11h2v2H4v-2zm16 0H8v2h12v-2zM4 16h2v2H4v-2zm16 0H8v2h12v-2z\" fill=\"currentColor\"><\/path><\/svg><svg style=\"fill: #999;color:#999\" class=\"arrow-unsorted-368013\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"10px\" height=\"10px\" viewBox=\"0 0 24 24\" version=\"1.2\" baseProfile=\"tiny\"><path d=\"M18.2 9.3l-6.2-6.3-6.2 6.3c-.2.2-.3.4-.3.7s.1.5.3.7c.2.2.4.3.7.3h11c.3 0 .5-.1.7-.3.2-.2.3-.5.3-.7s-.1-.5-.3-.7zM5.8 14.7l6.2 6.3 6.2-6.3c.2-.2.3-.5.3-.7s-.1-.5-.3-.7c-.2-.2-.4-.3-.7-.3h-11c-.3 0-.5.1-.7.3-.2.2-.3.5-.3.7s.1.5.3.7z\"\/><\/svg><\/span><\/span><\/label><input type=\"checkbox\"  id=\"ez-toc-cssicon-toggle-item-6a91b889cc40d\"  aria-label=\"Toggle\" \/><nav><ul class='ez-toc-list ez-toc-list-level-1 ' ><ul class='ez-toc-list-level-2' ><li class='ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-1\" href=\"https:\/\/komunitech.com\/blog\/tutorial\/cara-install-9router-di-vps-dengan-docker-panduan-lengkap-2026\/#Kenapa_Install_di_VPS_Bukan_di_Laptop\" >Kenapa Install di VPS, Bukan di Laptop<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-2\" href=\"https:\/\/komunitech.com\/blog\/tutorial\/cara-install-9router-di-vps-dengan-docker-panduan-lengkap-2026\/#Realita_Provider_%E2%80%9CGratis%E2%80%9D_di_2026\" >Realita Provider &#8220;Gratis&#8221; di 2026<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-3\" href=\"https:\/\/komunitech.com\/blog\/tutorial\/cara-install-9router-di-vps-dengan-docker-panduan-lengkap-2026\/#Spesifikasi_VPS_dan_Persiapan\" >Spesifikasi VPS dan Persiapan<\/a><ul class='ez-toc-list-level-3' ><li class='ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-4\" href=\"https:\/\/komunitech.com\/blog\/tutorial\/cara-install-9router-di-vps-dengan-docker-panduan-lengkap-2026\/#1_Spesifikasi_Minimum\" >1. Spesifikasi Minimum<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-5\" href=\"https:\/\/komunitech.com\/blog\/tutorial\/cara-install-9router-di-vps-dengan-docker-panduan-lengkap-2026\/#2_Pilih_Lokasi_Server_Terdekat\" >2. Pilih Lokasi Server Terdekat<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-6\" href=\"https:\/\/komunitech.com\/blog\/tutorial\/cara-install-9router-di-vps-dengan-docker-panduan-lengkap-2026\/#3_Siapkan_Minimal_Satu_Akun_Provider\" >3. Siapkan Minimal Satu Akun Provider<\/a><\/li><\/ul><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-7\" href=\"https:\/\/komunitech.com\/blog\/tutorial\/cara-install-9router-di-vps-dengan-docker-panduan-lengkap-2026\/#Langkah_Install_9Router_di_VPS\" >Langkah Install 9Router di VPS<\/a><ul class='ez-toc-list-level-3' ><li class='ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-8\" href=\"https:\/\/komunitech.com\/blog\/tutorial\/cara-install-9router-di-vps-dengan-docker-panduan-lengkap-2026\/#1_Install_Nodejs\" >1. Install Node.js<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-9\" href=\"https:\/\/komunitech.com\/blog\/tutorial\/cara-install-9router-di-vps-dengan-docker-panduan-lengkap-2026\/#2_Install_9Router_Secara_Global\" >2. Install 9Router Secara Global<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-10\" href=\"https:\/\/komunitech.com\/blog\/tutorial\/cara-install-9router-di-vps-dengan-docker-panduan-lengkap-2026\/#3_Jalankan_9Router_dan_Pilih_Mode_Akses\" >3. Jalankan 9Router dan Pilih Mode Akses<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-11\" href=\"https:\/\/komunitech.com\/blog\/tutorial\/cara-install-9router-di-vps-dengan-docker-panduan-lengkap-2026\/#4_Alternatif_Jalankan_via_Docker\" >4. Alternatif: Jalankan via Docker<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-12\" href=\"https:\/\/komunitech.com\/blog\/tutorial\/cara-install-9router-di-vps-dengan-docker-panduan-lengkap-2026\/#5_Pahami_Persistensi_Data_%E2%80%94_Jangan_Lewatkan_Ini\" >5. Pahami Persistensi Data \u2014 Jangan Lewatkan Ini<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-13\" href=\"https:\/\/komunitech.com\/blog\/tutorial\/cara-install-9router-di-vps-dengan-docker-panduan-lengkap-2026\/#6_Hubungkan_Provider_AI_Pertama\" >6. Hubungkan Provider AI Pertama<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-14\" href=\"https:\/\/komunitech.com\/blog\/tutorial\/cara-install-9router-di-vps-dengan-docker-panduan-lengkap-2026\/#7_Sambungkan_Tool_Coding_ke_Endpoint_VPS\" >7. Sambungkan Tool Coding ke Endpoint VPS<\/a><\/li><\/ul><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-15\" href=\"https:\/\/komunitech.com\/blog\/tutorial\/cara-install-9router-di-vps-dengan-docker-panduan-lengkap-2026\/#Konfigurasi_Lanjutan\" >Konfigurasi Lanjutan<\/a><ul class='ez-toc-list-level-3' ><li class='ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-16\" href=\"https:\/\/komunitech.com\/blog\/tutorial\/cara-install-9router-di-vps-dengan-docker-panduan-lengkap-2026\/#1_Mode_Production_dengan_Environment_Variables\" >1. Mode Production dengan Environment Variables<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-17\" href=\"https:\/\/komunitech.com\/blog\/tutorial\/cara-install-9router-di-vps-dengan-docker-panduan-lengkap-2026\/#2_Update_ke_Versi_Terbaru\" >2. Update ke Versi Terbaru<\/a><\/li><\/ul><\/li><\/ul><\/li><li class='ez-toc-page-1 ez-toc-heading-level-1'><a class=\"ez-toc-link ez-toc-heading-18\" href=\"https:\/\/komunitech.com\/blog\/tutorial\/cara-install-9router-di-vps-dengan-docker-panduan-lengkap-2026\/#jalankan_ulang_perintah_docker_run_di_atas\" >jalankan ulang perintah docker run di atas<\/a><ul class='ez-toc-list-level-2' ><li class='ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-19\" href=\"https:\/\/komunitech.com\/blog\/tutorial\/cara-install-9router-di-vps-dengan-docker-panduan-lengkap-2026\/#Keamanan_Bagian_yang_Paling_Sering_Dilewatkan\" >Keamanan: Bagian yang Paling Sering Dilewatkan<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-20\" href=\"https:\/\/komunitech.com\/blog\/tutorial\/cara-install-9router-di-vps-dengan-docker-panduan-lengkap-2026\/#Troubleshooting_Dasar\" >Troubleshooting Dasar<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-21\" href=\"https:\/\/komunitech.com\/blog\/tutorial\/cara-install-9router-di-vps-dengan-docker-panduan-lengkap-2026\/#Pertanyaan_yang_Sering_Ditanya\" >Pertanyaan yang Sering Ditanya<\/a><ul class='ez-toc-list-level-3' ><li class='ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-22\" href=\"https:\/\/komunitech.com\/blog\/tutorial\/cara-install-9router-di-vps-dengan-docker-panduan-lengkap-2026\/#Berapa_spesifikasi_VPS_minimum_untuk_9Router\" >Berapa spesifikasi VPS minimum untuk 9Router?<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-23\" href=\"https:\/\/komunitech.com\/blog\/tutorial\/cara-install-9router-di-vps-dengan-docker-panduan-lengkap-2026\/#Apakah_data_hilang_kalau_container_di-restart_atau_diupdate\" >Apakah data hilang kalau container di-restart atau diupdate?<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-24\" href=\"https:\/\/komunitech.com\/blog\/tutorial\/cara-install-9router-di-vps-dengan-docker-panduan-lengkap-2026\/#Apakah_aman_mengakses_9Router_dari_luar_VPS\" >Apakah aman mengakses 9Router dari luar VPS?<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-25\" href=\"https:\/\/komunitech.com\/blog\/tutorial\/cara-install-9router-di-vps-dengan-docker-panduan-lengkap-2026\/#Apa_bedanya_install_di_VPS_dibanding_npm_lokal_di_laptop\" >Apa bedanya install di VPS dibanding npm lokal di laptop?<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-26\" href=\"https:\/\/komunitech.com\/blog\/tutorial\/cara-install-9router-di-vps-dengan-docker-panduan-lengkap-2026\/#Apakah_butuh_domain_dan_SSL\" >Apakah butuh domain dan SSL?<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-27\" href=\"https:\/\/komunitech.com\/blog\/tutorial\/cara-install-9router-di-vps-dengan-docker-panduan-lengkap-2026\/#Apakah_9Router_benar-benar_gratis_dan_unlimited\" >Apakah 9Router benar-benar gratis dan unlimited?<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-28\" href=\"https:\/\/komunitech.com\/blog\/tutorial\/cara-install-9router-di-vps-dengan-docker-panduan-lengkap-2026\/#Bisakah_dipakai_bersama_satu_tim\" >Bisakah dipakai bersama satu tim?<\/a><\/li><\/ul><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-29\" href=\"https:\/\/komunitech.com\/blog\/tutorial\/cara-install-9router-di-vps-dengan-docker-panduan-lengkap-2026\/#Kesimpulan\" >Kesimpulan<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-30\" href=\"https:\/\/komunitech.com\/blog\/tutorial\/cara-install-9router-di-vps-dengan-docker-panduan-lengkap-2026\/#Referensi\" >Referensi<\/a><\/li><\/ul><\/li><\/ul><\/nav><\/div>\n<h2><span class=\"ez-toc-section\" id=\"Kenapa_Install_di_VPS_Bukan_di_Laptop\"><\/span>Kenapa Install di VPS, Bukan di Laptop<span class=\"ez-toc-section-end\"><\/span><\/h2>\n<p>Secara default 9Router berjalan di <code>localhost:20128<\/code> \u2014 artinya hanya bisa diakses dari komputer tempat ia dipasang. Untuk banyak orang, itu sudah cukup. VPS baru masuk akal kalau kamu menghadapi salah satu dari ini:<\/p>\n<ul>\n<li><strong>Butuh akses dari beberapa perangkat.<\/strong> Laptop kantor, PC rumah, dan laptop cadangan memakai satu konfigurasi yang sama tanpa setup ulang.<\/li>\n<li><strong>Dipakai bersama tim kecil.<\/strong> Satu gateway, beberapa developer, kuota provider terkelola terpusat.<\/li>\n<li><strong>Agent atau workflow harus jalan 24 jam.<\/strong> Kalau otomasimu berjalan di server lain (misalnya n8n di VPS terpisah), endpoint <code>localhost<\/code> di laptopmu tidak akan bisa dijangkau.<\/li>\n<li><strong>Laptop sering mati atau berpindah jaringan.<\/strong> Router yang mati ikut mematikan seluruh alur kerja.<\/li>\n<\/ul>\n<p>[ANALISIS KOMUNITECH] Sebaliknya, <strong>kamu tidak perlu VPS<\/strong> kalau cuma pakai sendiri di satu mesin. Menambah VPS berarti menambah biaya bulanan dan satu komponen lagi yang harus kamu rawat \u2014 tanpa manfaat nyata kalau semua pekerjaan tetap terjadi di laptop yang sama. Jangan bayar server untuk masalah yang belum kamu punya.<\/p>\n<h2><span class=\"ez-toc-section\" id=\"Realita_Provider_%E2%80%9CGratis%E2%80%9D_di_2026\"><\/span>Realita Provider &#8220;Gratis&#8221; di 2026<span class=\"ez-toc-section-end\"><\/span><\/h2>\n<p>Sebelum masuk teknis, satu hal yang perlu diluruskan karena banyak tutorial lama masih menjanjikannya: <strong>klaim &#8220;AI coding gratis unlimited&#8221; sudah tidak seakurat dulu.<\/strong> Beberapa jalur gratis yang populer sudah ditutup atau dibatasi.<\/p>\n<p>[FAKTA] Menurut catatan resmi di repositori 9Router: free tier <strong>iFlow, Qwen Code, dan Gemini CLI sudah dihentikan pada 2026<\/strong>. Kiro AI berpindah ke model berbayar sejak September 2025 \u2014 jatah gratisnya kini dibatasi <strong>50 kredit per bulan<\/strong> (plus 500 kredit percobaan untuk akun baru selama 30 hari pertama), dengan tier berbayar Pro $20\/bln (1.000 kredit) hingga Power $200\/bln (10.000 kredit). Daftar model OpenCode Free berubah-ubah dan sebagian hanya gratis selama promo. Untuk Vertex AI, kredit $300 akun GCP baru masih berlaku, tetapi sejak Maret 2026 endpoint Gemini API tidak lagi memotong kredit tersebut \u2014 harus memakai endpoint Vertex AI Studio \u2014 <a href=\"https:\/\/github.com\/decolua\/9router\" rel=\"noopener nofollow\" target=\"_blank\">sumber: 9Router \u2014 repositori resmi<\/a>.<\/p>\n<p>[ANALISIS KOMUNITECH] Jadi posisikan harapanmu dengan benar: 9Router itu alat <em>efisiensi<\/em>, bukan mesin gratisan. Nilai terbesarnya bukan &#8220;model gratis selamanya&#8221;, melainkan (1) memaksimalkan kuota langganan yang <em>sudah<\/em> kamu bayar sebelum jatuh ke opsi lain, dan (2) menghemat token lewat kompresi otomatis. Kalau kamu memasang VPS semata-mata mengejar model gratis tak terbatas, kemungkinan besar kamu akan kecewa.<\/p>\n<h2><span class=\"ez-toc-section\" id=\"Spesifikasi_VPS_dan_Persiapan\"><\/span>Spesifikasi VPS dan Persiapan<span class=\"ez-toc-section-end\"><\/span><\/h2>\n<h3><span class=\"ez-toc-section\" id=\"1_Spesifikasi_Minimum\"><\/span>1. Spesifikasi Minimum<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>[FAKTA] Kebutuhan minimum untuk menjalankan 9Router: <strong>OS Linux (Ubuntu 22.04 atau 24.04 direkomendasikan), Node.js 18+ atau 20+, npm, RAM minimal 2 GB, dan port 20128 terbuka di firewall<\/strong> \u2014 <a href=\"https:\/\/kb.biznetgio.com\/id_ID\/instalasi\/cara-install-9router\" rel=\"noopener nofollow\" target=\"_blank\">sumber: Biznet Gio \u2014 Cara Install 9Router<\/a>.<\/p>\n<table>\n<thead>\n<tr>\n<th>Komponen<\/th>\n<th>Minimum (personal \/ tim kecil)<\/th>\n<th>Jika menambah agent berat<\/th>\n<\/tr>\n<\/thead>\n<tbody>\n<tr>\n<td>Sistem operasi<\/td>\n<td>Ubuntu 22.04 \/ 24.04 LTS<\/td>\n<td>Sama<\/td>\n<\/tr>\n<tr>\n<td>CPU<\/td>\n<td>1 vCPU<\/td>\n<td>1-2 vCPU<\/td>\n<\/tr>\n<tr>\n<td>RAM<\/td>\n<td>2 GB<\/td>\n<td>4 GB<\/td>\n<\/tr>\n<tr>\n<td>Storage<\/td>\n<td>10-20 GB SSD\/NVMe<\/td>\n<td>20 GB+ NVMe<\/td>\n<\/tr>\n<tr>\n<td>Port<\/td>\n<td>20128 terbuka<\/td>\n<td>Sama<\/td>\n<\/tr>\n<tr>\n<td>Kisaran biaya<\/td>\n<td>\u00b1$4-6\/bulan<\/td>\n<td>\u00b1$6-12\/bulan<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p>[FAKTA] Angka 4 GB pada kolom kanan berlaku kalau kamu memasang framework agent di atas 9Router \u2014 misalnya Hermes Agent, yang dokumentasi instalasinya mensyaratkan RAM minimal 4 GB, Python 3.10+, dan 9Router yang sudah aktif lebih dulu \u2014 <a href=\"https:\/\/kb.biznetgio.com\/id_ID\/instalasi\/cara-install-agent-hermes-pada-9router\" rel=\"noopener nofollow\" target=\"_blank\">sumber: Biznet Gio \u2014 Install Agent Hermes pada 9Router<\/a>. Untuk 9Router polos, 2 GB sudah memadai.<\/p>\n<h3><span class=\"ez-toc-section\" id=\"2_Pilih_Lokasi_Server_Terdekat\"><\/span>2. Pilih Lokasi Server Terdekat<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>Setiap request dari tool codingmu harus melewati VPS sebelum diteruskan ke penyedia model. Semakin jauh lokasi server, semakin besar tambahan latensi yang kamu rasakan di setiap permintaan. Untuk pengguna Indonesia, pilih region Singapura atau Jakarta kalau tersedia \u2014 bukan Amerika atau Eropa, walaupun harganya kadang lebih murah.<\/p>\n<h3><span class=\"ez-toc-section\" id=\"3_Siapkan_Minimal_Satu_Akun_Provider\"><\/span>3. Siapkan Minimal Satu Akun Provider<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>9Router hanya meneruskan request; ia tidak menyediakan model sendiri. Siapkan minimal satu sumber sebelum instalasi: langganan yang sudah kamu punya (Claude, Codex, GitHub Copilot), API key berbayar murah (GLM, MiniMax, DeepSeek), atau opsi gratis terbatas (Kiro AI, OpenCode Free) dengan catatan keterbatasan yang sudah dijelaskan di atas.<\/p>\n<h2><span class=\"ez-toc-section\" id=\"Langkah_Install_9Router_di_VPS\"><\/span>Langkah Install 9Router di VPS<span class=\"ez-toc-section-end\"><\/span><\/h2>\n<h3><span class=\"ez-toc-section\" id=\"1_Install_Nodejs\"><\/span>1. Install Node.js<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>[FAKTA] Jalankan perintah berikut untuk memasang Node.js 20.x di Ubuntu, sesuai panduan resmi:<\/p>\n<pre><code>curl -fsSL https:\/\/deb.nodesource.com\/setup_20.x | sudo -E bash -\nsudo apt install -y nodejs<\/code><\/pre>\n<p>Verifikasi instalasi berhasil:<\/p>\n<pre><code>node -v\nnpm -v<\/code><\/pre>\n<p>\u2014 <a href=\"https:\/\/kb.biznetgio.com\/id_ID\/instalasi\/cara-install-9router\" rel=\"noopener nofollow\" target=\"_blank\">sumber: Biznet Gio \u2014 Cara Install 9Router<\/a>.<\/p>\n<h3><span class=\"ez-toc-section\" id=\"2_Install_9Router_Secara_Global\"><\/span>2. Install 9Router Secara Global<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<pre><code>npm install -g 9router<\/code><\/pre>\n<p>Tunggu sampai proses instalasi selesai. Ini memasang 9Router sebagai perintah global yang bisa dipanggil dari direktori mana pun di VPS-mu. Polanya mirip dengan tutorial instalasi tool serupa \u2014 kalau kamu pernah mengikuti <a href=\"https:\/\/komunitech.com\/blog\/tutorial\/cara-install-openclaw-standalone-di-pc-laptop-windows-mac-linux-2026\/\">cara install OpenClaw standalone<\/a>, alurnya akan terasa familiar.<\/p>\n<h3><span class=\"ez-toc-section\" id=\"3_Jalankan_9Router_dan_Pilih_Mode_Akses\"><\/span>3. Jalankan 9Router dan Pilih Mode Akses<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<pre><code>9router<\/code><\/pre>\n<p>Saat pertama kali dijalankan, kamu akan diminta memilih mode interface. Untuk penggunaan di VPS, pilih <strong>Web UI (Open in Browser)<\/strong> \u2014 mode ini menyalakan dashboard visual untuk menambah provider, mengatur fallback, dan memonitor request. Dashboard bisa diakses lewat <code>http:\/\/IP-SERVER:20128\/dashboard<\/code>, dan ini adalah mode yang direkomendasikan khusus untuk VPS dan penggunaan administrasi jangka panjang.<\/p>\n<h3><span class=\"ez-toc-section\" id=\"4_Alternatif_Jalankan_via_Docker\"><\/span>4. Alternatif: Jalankan via Docker<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>[FAKTA] Kalau kamu lebih nyaman dengan container, 9Router juga tersedia sebagai image resmi multi-platform (linux\/amd64 dan linux\/arm64):<\/p>\n<pre><code>docker run -d \n  -p 20128:20128 \n  -v \"$HOME\/.9router:\/app\/data\" \n  -e DATA_DIR=\/app\/data \n  --name 9router \n  decolua\/9router:latest<\/code><\/pre>\n<p>Perintah dasar untuk mengelola container: <code>docker logs -f 9router<\/code> (lihat log), <code>docker stop 9router<\/code> \/ <code>docker start 9router<\/code> (hentikan\/nyalakan), <code>docker rm -f 9router<\/code> (hapus) \u2014 <a href=\"https:\/\/github.com\/decolua\/9router\/blob\/master\/DOCKER.md\" rel=\"noopener nofollow\" target=\"_blank\">sumber: 9Router \u2014 dokumentasi Docker resmi<\/a>.<\/p>\n<h3><span class=\"ez-toc-section\" id=\"5_Pahami_Persistensi_Data_%E2%80%94_Jangan_Lewatkan_Ini\"><\/span>5. Pahami Persistensi Data \u2014 Jangan Lewatkan Ini<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>[FAKTA] Baris <code>-v \"$HOME\/.9router:\/app\/data\"<\/code> di atas bukan opsional secara praktik. Tanpa mount volume itu, data 9Router (termasuk database SQLite berisi konfigurasi provider dan API key yang kamu simpan) tersimpan di dalam container \u2014 dan <strong>hilang begitu container dihapus atau dibuat ulang<\/strong>. Dengan volume ter-mount, data disimpan di <code>$DATA_DIR\/db\/data.sqlite<\/code> beserta folder backup otomatis, dan tetap ada meski kamu update atau restart container.<\/p>\n<h3><span class=\"ez-toc-section\" id=\"6_Hubungkan_Provider_AI_Pertama\"><\/span>6. Hubungkan Provider AI Pertama<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>Buka dashboard, masuk ke menu Providers, lalu hubungkan minimal satu sumber. Untuk mulai tanpa biaya, dashboard menyediakan opsi Kiro AI atau OpenCode Free yang tidak memerlukan pendaftaran tambahan \u2014 dengan catatan keterbatasan kuota yang sudah dijelaskan di bagian atas.<\/p>\n<h3><span class=\"ez-toc-section\" id=\"7_Sambungkan_Tool_Coding_ke_Endpoint_VPS\"><\/span>7. Sambungkan Tool Coding ke Endpoint VPS<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>Di pengaturan tool coding kamu (Claude Code, Cursor, Cline, Codex, atau CLI lain), arahkan endpoint ke alamat VPS-mu, bukan <code>localhost<\/code>:<\/p>\n<pre><code>Endpoint: http:\/\/IP-SERVER-KAMU:20128\/v1\nAPI Key: [salin dari dashboard 9Router]\nModel: kr\/nama-model (contoh: kr\/claude-sonnet-4.5)<\/code><\/pre>\n<h2><span class=\"ez-toc-section\" id=\"Konfigurasi_Lanjutan\"><\/span>Konfigurasi Lanjutan<span class=\"ez-toc-section-end\"><\/span><\/h2>\n<h3><span class=\"ez-toc-section\" id=\"1_Mode_Production_dengan_Environment_Variables\"><\/span>1. Mode Production dengan Environment Variables<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>[FAKTA] Kalau menjalankan dari source (bukan npm global atau Docker), gunakan mode production dengan variabel berikut agar bisa diakses dari luar server:<\/p>\n<pre><code>npm run build\nPORT=20128 HOSTNAME=0.0.0.0 NEXT_PUBLIC_BASE_URL=http:\/\/IP-SERVER-KAMU:20128 npm run start<\/code><\/pre>\n<p><code>HOSTNAME=0.0.0.0<\/code> adalah kuncinya \u2014 tanpa ini, aplikasi hanya mendengarkan koneksi dari dalam server itu sendiri (localhost), persis seperti instalasi default di laptop, dan tidak akan bisa diakses dari perangkat lain sama sekali.<\/p>\n<h3><span class=\"ez-toc-section\" id=\"2_Update_ke_Versi_Terbaru\"><\/span>2. Update ke Versi Terbaru<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>Untuk pengguna Docker:<\/p>\n<pre><code>docker pull decolua\/9router:latest\ndocker rm -f 9router\n<h1><span class=\"ez-toc-section\" id=\"jalankan_ulang_perintah_docker_run_di_atas\"><\/span>jalankan ulang perintah docker run di atas<\/code><\/pre>\n<span class=\"ez-toc-section-end\"><\/span><\/h1>\n<h2><span class=\"ez-toc-section\" id=\"Keamanan_Bagian_yang_Paling_Sering_Dilewatkan\"><\/span>Keamanan: Bagian yang Paling Sering Dilewatkan<span class=\"ez-toc-section-end\"><\/span><\/h2>\n<p>[ANALISIS KOMUNITECH] Ini bagian yang jarang dibahas tutorial lain secara serius, padahal risikonya nyata. Begitu 9Router berjalan dengan <code>HOSTNAME=0.0.0.0<\/code> di VPS dengan IP publik, port 20128 berpotensi diakses siapa saja di internet yang menemukannya \u2014 bukan cuma kamu. Kalau seseorang berhasil mengakses dashboard atau endpoint API-mu, mereka bisa memakai kuota providermu, dan tagihannya jatuh ke akunmu, bukan mereka.<\/p>\n<p>Tiga opsi mitigasi yang wajar untuk VPS pribadi atau tim kecil, urut dari yang paling sederhana:<\/p>\n<ul>\n<li><strong>Batasi lewat firewall (paling mudah).<\/strong> Konfigurasi firewall VPS (ufw, iptables, atau firewall panel provider) supaya port 20128 hanya menerima koneksi dari IP tertentu \u2014 IP kantor, IP rumah, atau IP tim kamu. Bukan dibuka untuk semua orang (<code>0.0.0.0\/0<\/code>).<\/li>\n<li><strong>Gunakan SSH tunnel.<\/strong> Alih-alih membuka port ke publik, akses 9Router lewat tunnel SSH (<code>ssh -L 20128:localhost:20128 user@ip-server<\/code>). Port tetap tertutup dari luar, kamu tetap bisa mengaksesnya seolah-olah lokal.<\/li>\n<li><strong>Pasang reverse proxy dengan autentikasi.<\/strong> Kalau kamu perlu akses dari banyak lokasi tanpa tunnel manual tiap kali, taruh Nginx atau Caddy di depan 9Router dengan basic auth atau lapisan autentikasi tambahan.<\/li>\n<\/ul>\n<p>Jangan anggap remeh langkah ini hanya karena skala pemakaianmu kecil \u2014 API key yang bocor tetap bisa dipakai orang lain sampai kamu sadar dan mencabutnya.<\/p>\n<h2><span class=\"ez-toc-section\" id=\"Troubleshooting_Dasar\"><\/span>Troubleshooting Dasar<span class=\"ez-toc-section-end\"><\/span><\/h2>\n<table>\n<thead>\n<tr>\n<th>Masalah<\/th>\n<th>Perintah \/ Cek<\/th>\n<\/tr>\n<\/thead>\n<tbody>\n<tr>\n<td>Ingin lihat log berjalan<\/td>\n<td><code>docker logs -f 9router<\/code><\/td>\n<\/tr>\n<tr>\n<td>Dashboard tidak bisa diakses dari luar<\/td>\n<td>Cek <code>HOSTNAME=0.0.0.0<\/code> sudah diset, dan port 20128 terbuka di firewall<\/td>\n<\/tr>\n<tr>\n<td>Perlu restart layanan<\/td>\n<td><code>docker stop 9router &amp;&amp; docker start 9router<\/code><\/td>\n<\/tr>\n<tr>\n<td>Konfigurasi hilang setelah update<\/td>\n<td>Pastikan volume <code>-v \"$HOME\/.9router:\/app\/data\"<\/code> ter-mount dengan benar sebelum update<\/td>\n<\/tr>\n<tr>\n<td>Perlu install ulang bersih<\/td>\n<td><code>docker rm -f 9router<\/code>, lalu jalankan ulang perintah instalasi<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<h2><span class=\"ez-toc-section\" id=\"Pertanyaan_yang_Sering_Ditanya\"><\/span>Pertanyaan yang Sering Ditanya<span class=\"ez-toc-section-end\"><\/span><\/h2>\n<h3><span class=\"ez-toc-section\" id=\"Berapa_spesifikasi_VPS_minimum_untuk_9Router\"><\/span>Berapa spesifikasi VPS minimum untuk 9Router?<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>Ubuntu 22.04 atau 24.04, 1 vCPU, RAM minimal 2 GB, dan storage 10-20 GB sudah cukup untuk pemakaian personal atau tim kecil. Kalau kamu berencana memasang agent tambahan yang lebih berat di atas 9Router, siapkan RAM minimal 4 GB.<\/p>\n<h3><span class=\"ez-toc-section\" id=\"Apakah_data_hilang_kalau_container_di-restart_atau_diupdate\"><\/span>Apakah data hilang kalau container di-restart atau diupdate?<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>Tidak, selama kamu memasang volume mount <code>-v $HOME\/.9router:\/app\/data<\/code> sejak awal instalasi. Tanpa volume itu, konfigurasi dan API key yang tersimpan di dalam container akan hilang begitu container dihapus atau dibuat ulang.<\/p>\n<h3><span class=\"ez-toc-section\" id=\"Apakah_aman_mengakses_9Router_dari_luar_VPS\"><\/span>Apakah aman mengakses 9Router dari luar VPS?<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>Aman selama kamu membatasi akses lewat firewall (hanya IP tertentu), SSH tunnel, atau reverse proxy dengan autentikasi. Membuka port 20128 ke seluruh internet tanpa proteksi berisiko \u2014 siapa pun yang menemukannya berpotensi memakai kuota providermu.<\/p>\n<h3><span class=\"ez-toc-section\" id=\"Apa_bedanya_install_di_VPS_dibanding_npm_lokal_di_laptop\"><\/span>Apa bedanya install di VPS dibanding npm lokal di laptop?<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>Secara teknis prosesnya sama (<code>npm install -g 9router<\/code>). Bedanya di aksesibilitas: instalasi lokal hanya bisa diakses dari laptop itu sendiri (<code>localhost<\/code>), sedangkan instalasi VPS dengan <code>HOSTNAME=0.0.0.0<\/code> bisa diakses dari perangkat mana pun yang kamu izinkan lewat IP publik server.<\/p>\n<h3><span class=\"ez-toc-section\" id=\"Apakah_butuh_domain_dan_SSL\"><\/span>Apakah butuh domain dan SSL?<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>Tidak wajib untuk pemakaian dasar \u2014 kamu bisa langsung mengakses lewat <code>http:\/\/IP-SERVER:20128<\/code>. Domain dan SSL (HTTPS) jadi relevan kalau kamu memasang reverse proxy untuk keamanan tambahan atau ingin URL yang lebih mudah diingat oleh tim.<\/p>\n<h3><span class=\"ez-toc-section\" id=\"Apakah_9Router_benar-benar_gratis_dan_unlimited\"><\/span>Apakah 9Router benar-benar gratis dan unlimited?<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>9Router sendiri gratis dipakai (kamu memakai API key\/langganan sendiri, model BYOK). Tapi \u201cunlimited free model\u201d yang sering dijanjikan tutorial lama sudah tidak akurat \u2014 beberapa jalur gratis populer (iFlow, Qwen Code, Gemini CLI) sudah dihentikan di 2026, dan Kiro AI kini dibatasi 50 kredit\/bulan setelah berpindah ke model berbayar.<\/p>\n<h3><span class=\"ez-toc-section\" id=\"Bisakah_dipakai_bersama_satu_tim\"><\/span>Bisakah dipakai bersama satu tim?<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>Bisa. 9Router mendukung multi-akun dengan round-robin antar akun per provider, sehingga beberapa anggota tim bisa berbagi satu instance sambil kuotanya tetap terlacak terpisah. Untuk pemakaian tim, pastikan spesifikasi VPS naik ke level rekomendasi (2 vCPU, 4 GB RAM) dan akses dibatasi lewat firewall.<\/p>\n<h2><span class=\"ez-toc-section\" id=\"Kesimpulan\"><\/span>Kesimpulan<span class=\"ez-toc-section-end\"><\/span><\/h2>\n<p>Memasang 9Router di VPS bukan proses yang rumit \u2014 inti instalasinya cuma dua atau tiga perintah, baik lewat npm maupun Docker. Yang justru sering terlewat adalah dua hal yang menentukan apakah instalasimu benar-benar berguna dalam jangka panjang: <strong>memastikan data ter-mount dengan benar<\/strong> supaya konfigurasimu tidak hilang, dan <strong>membatasi akses ke port 20128<\/strong> supaya kuota providermu tidak dipakai orang lain.<\/p>\n<p>Kalau kamu sedang menyusun infrastruktur AI yang lebih luas dari sekadar satu router \u2014 termasuk otomasi bisnis yang berjalan di atasnya \u2014 pertimbangan biaya server ini sebaiknya masuk ke perhitungan total, bukan cuma biaya API. Kami bahas komponen biaya lainnya di <a href=\"https:\/\/komunitech.com\/blog\/ai-agent\/bot-ai-murah-untuk-bisnis-online-rekomendasi-buat-pemula-2026\/\">bot AI murah untuk bisnis online<\/a>, dan kalau kamu ingin belajar menyusun sistem semacam ini dengan pendampingan langsung, gabung <a href=\"https:\/\/komunitech.com\/blog\/\">workshop KomuniTech<\/a> (2 jam, langsung praktik bikin Karyawan AI sendiri, plus sertifikat sebagai peserta).<\/p>\n<h2><span class=\"ez-toc-section\" id=\"Referensi\"><\/span>Referensi<span class=\"ez-toc-section-end\"><\/span><\/h2>\n<ul>\n<li><a href=\"https:\/\/kb.biznetgio.com\/id_ID\/instalasi\/cara-install-9router\" rel=\"noopener nofollow\" target=\"_blank\">Biznet Gio \u2014 Cara Install 9Router<\/a><\/li>\n<li><a href=\"https:\/\/github.com\/decolua\/9router\/blob\/master\/DOCKER.md\" rel=\"noopener nofollow\" target=\"_blank\">9Router \u2014 Dokumentasi Docker resmi<\/a><\/li>\n<li><a href=\"https:\/\/github.com\/decolua\/9router\" rel=\"noopener nofollow\" target=\"_blank\">9Router \u2014 Repositori resmi<\/a><\/li>\n<li><a href=\"https:\/\/kb.biznetgio.com\/id_ID\/instalasi\/cara-install-agent-hermes-pada-9router\" rel=\"noopener nofollow\" target=\"_blank\">Biznet Gio \u2014 Install Agent Hermes pada 9Router<\/a><\/li>\n<\/ul>\n<p><em>Disclaimer: Artikel ini bersifat edukasi dan netral. 9Router adalah produk milik pihak ketiga (decolua); Komunitech tidak berafiliasi dan tidak menerima kompensasi dari pembuatnya. Detail harga, spesifikasi, dan kebijakan provider dapat berubah sewaktu-waktu \u2014 verifikasi ke dokumentasi resmi sebelum mengambil keputusan.<\/em><\/p>\n","protected":false},"excerpt":{"rendered":"<p>tl;dr: 9Router bisa dipasang di VPS pakai Docker dalam satu perintah, jalan di port 20128, dan datanya aman selama kamu mount volume dengan benar. Spesifikasi minimum: Ubuntu 22.04\/24.04, 1 vCPU, RAM 2 GB. Estimasi waktu 15-20 menit. Satu hal yang paling sering dilewatkan tutorial lain: jangan pernah expose port 20128 langsung ke internet \u2014 siapa [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":1393,"comment_status":"open","ping_status":"","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[75],"tags":[],"class_list":["post-1391","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-tutorial"],"_links":{"self":[{"href":"https:\/\/komunitech.com\/blog\/wp-json\/wp\/v2\/posts\/1391","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/komunitech.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/komunitech.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/komunitech.com\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/komunitech.com\/blog\/wp-json\/wp\/v2\/comments?post=1391"}],"version-history":[{"count":1,"href":"https:\/\/komunitech.com\/blog\/wp-json\/wp\/v2\/posts\/1391\/revisions"}],"predecessor-version":[{"id":1392,"href":"https:\/\/komunitech.com\/blog\/wp-json\/wp\/v2\/posts\/1391\/revisions\/1392"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/komunitech.com\/blog\/wp-json\/wp\/v2\/media\/1393"}],"wp:attachment":[{"href":"https:\/\/komunitech.com\/blog\/wp-json\/wp\/v2\/media?parent=1391"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/komunitech.com\/blog\/wp-json\/wp\/v2\/categories?post=1391"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/komunitech.com\/blog\/wp-json\/wp\/v2\/tags?post=1391"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}