# Profil & Infrastruktur > Konteks pemilik proyek **GeoNet IT / GIS Portal**. > **Repo Git:** `server-connection` — monorepo aplikasi & skrip deploy internal. > Nama **GeoNetAgent** = konteks kerja AI/agent di Cursor (bukan nama folder repo). > Baca file ini sebelum asumsi tentang stack, peran, atau lingkungan kerja. ## Nama & ruang lingkup | Istilah | Arti | |---------|------| | **server-connection** | Nama repository — berisi kode, rules, skrip deploy | | **GeoNetAgent** | Konteks AI/agent untuk membantu pengembangan repo ini | | **gisportal.id** | Domain produksi internal (console, databaselist, sqlservercheck) | ## Siapa Saya Saya adalah **IT yang mengelola infrastruktur end-to-end**: - Network & firewall - Perangkat user (banyak laptop) - Server, VM, storage - GIS - Licensing software - Monitoring & operasional harian Saya sering **berpindah perangkat saat development** — gunakan file di `.cursor/` dan `AGENTS.md` sebagai sumber kebenaran proyek, jangan ulangi tanya konteks yang sudah tercatat di sini. ## Stack & Aset yang Sudah Dimiliki ### Application & Backend | Komponen | Status | Catatan | |----------|--------|---------| | Laravel 12 | ✅ | `geonet-console/`, `databaselist/` | | FastAPI | ✅ | Layanan Python terpisah (jika ada) | | Python | ✅ | Skrip & tooling | | SQL Server | ✅ | `10.100.1.25`, dipakai GIS/legacy | | PostgreSQL | ✅ | App metadata, audit log, target pgvector | ### Monitoring & Identity | Komponen | Status | Host | |----------|--------|------| | Zabbix | ✅ | `10.100.1.42` | | Windows Server 2012 R2 Active Directory | ✅ | `10.100.1.40` (domain `gisportal.id`) | ### Compute & Virtualization | Komponen | IP / detail | |----------|-------------| | Proxmox | Host VM utama | | VM Database | `10.100.1.25` — PostgreSQL, SQL Server | | VM Docker (reverse proxy) | `10.100.1.24` — Nginx, stack `/opt/stacks/*` | | VM Ollama | `10.100.1.26` (`aiopr`) — AI inference (POC) | | VM baru | Dibuat on-demand sesuai kebutuhan | ### Network & Storage | Komponen | IP / detail | |----------|-------------| | MikroTik CCR2004 | `10.100.1.1` — gateway, routing, firewall | | QNAP TS-932X | `10.100.1.10` — NAS SMB (`\\10.100.1.10\project`, dll.) | ### Endpoint | Komponen | Detail | |----------|--------| | Banyak laptop user | Windows, domain-joined via AD | | GPO (AD) | Channel deploy agent ke endpoint | ### Lingkungan Development | Item | Contoh / catatan | |------|------------------| | OS dev | Windows (laptop/workstation) | | Docker lokal | Tidak dipakai — build & run di server `10.100.1.24` | | Deploy | `.\scripts\deploy-*.ps1` dari folder repo | | Kredensial | `.env` **hanya di server**, tidak di-sync dari laptop | | SSH reverse proxy | `ssh -m hmac-sha1 root@10.100.1.24 -p 22` | | SSH Mikrotik | `.\scripts\ssh-mikrotik.ps1` (key RSA untuk RouterOS 7.5) | ## Ruang Lingkup Tanggung Jawab ```mermaid Network (MikroTik) → Firewall → Server/VM (Proxmox) → Storage (QNAP) ↓ Laptop user (AD + agent) ↓ Monitoring (Zabbix) + Portal IT (Laravel/FastAPI) ``` ## Preferensi Kerja - Bahasa komunikasi: **Bahasa Indonesia** - Jangan duplikasi fungsi Zabbix di aplikasi custom — Zabbix tetap pusat alerting real-time - PostgreSQL untuk aplikasi/CMDB baru; SQL Server untuk legacy/GIS jika sudah terikat - Minimalkan scope perubahan; ikuti konvensi existing code - Jangan commit kecuali diminta eksplisit - Documentation first — sinkronkan `.cursor/` setelah sesi besar (lihat `perintah.md`) ## Aplikasi di repo `server-connection` | Folder | URL produksi | Stack server | |--------|--------------|--------------| | `geonet-console/` | https://console.gisportal.id | `/opt/stacks/geonet-console/` | | `databaselist/` | https://databaselist.gisportal.id | `/opt/stacks/databaselist/` | | `sqlservercheck/` | https://sqlservercheck.gisportal.id | `/opt/stacks/sqlservercheck/` | ## URL operasional ### geonet-console | Fungsi | URL | |--------|-----| | Login / dashboard | https://console.gisportal.id | ### databaselist | Fungsi | URL | |--------|-----| | Daftar database | https://databaselist.gisportal.id/ | | LDAP Users | https://databaselist.gisportal.id/ldap-users | | LDAP Groups | https://databaselist.gisportal.id/ldap-groups | | DB Connections | https://databaselist.gisportal.id/database-connections | | Mail SMTP & template | https://databaselist.gisportal.id/mail-settings | | Audit Logs | https://databaselist.gisportal.id/audit-logs | | API Clients | https://databaselist.gisportal.id/api-clients | | API Docs | https://databaselist.gisportal.id/api-docs | | Profile (user) | https://databaselist.gisportal.id/profile | | REST API | https://databaselist.gisportal.id/api/v1 | ### sqlservercheck | Fungsi | URL | |--------|-----| | Tool cek SQL Server | https://sqlservercheck.gisportal.id/ts | | | https://sqlservercheck.gisportal.id/nts | ## File konteks terkait | File | Isi | |------|-----| | `.cursor/me.md` | Profil pemilik & infrastruktur (file ini) | | `.cursor/rules/*.mdc` | Rules Cursor — konteks, UX, backend, deploy | | `AGENTS.md` | Ringkasan agent, rules aktif, roadmap Ollama/NAS | | `perintah.md` | Protokol sync dokumentasi AI di akhir sesi | | `readme.txt` | SSH, deploy cepat, URL | | `rules` / `rules-adv` | Requirement bisnis manual | | `server/host.txt` | Daftar host & IP | | `server/ollama-nas-project-search-requirements.md` | Requirement Ollama + NAS search | | `Cursor-Enterprise-Full-Documentation/` | Baseline enterprise | | `cursor-exsisting/` | Audit UI/UX detail | | `cursor-exsisting-ask/` | Status implementasi detail | ### Rules Cursor (prioritas) | File | Isi | |------|-----| | `00-project-context.mdc` | Struktur repo, host SSH, deploy | | `01-enterprise-principles.mdc` | Prinsip enterprise & UX | | `02-implementation-status.mdc` | Status fitur geonet-console | | `03-ai-behavior.mdc` | Perilaku agent, larangan | | `04-geonet-uiux.mdc` | Standar UI/UX | | `05-laravel-backend.mdc` | Service layer, API, audit | | `06-infrastructure.mdc` | SSH, Mikrotik, skrip deploy | ## Status proyek | Topik | Sumber status | |-------|----------------| | Fitur geonet-console | `.cursor/rules/02-implementation-status.mdc` | | Ollama + NAS search | `AGENTS.md` (direncanakan) | | Requirement bisnis | `rules`, `rules-adv` | | Sync dokumentasi AI | `perintah.md` | ## Deploy cepat ```powershell .\scripts\deploy-geonet-console.ps1 .\scripts\deploy-databaselist.ps1 .\scripts\deploy-sqlservercheck.ps1 .\scripts\deploy-databaselist.ps1 -NoBuild # restart tanpa rebuild ```