GeoNetAgent, LDAPWeb, server-audit, server-connection
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

2.6 KiB

Architecture — Deployment Architecture

Terakhir Diperbarui: 2026-06-29


Topology

Internet / LAN
    │  HTTPS :443
    ▼
┌──────────────────────────────────────────────────┐
│  Nginx Reverse Proxy  (10.100.1.24)               │
│  /etc/nginx/conf.d/production/                    │
│  - geonet-console.conf  → console.gisportal.id    │
│  - databaselist.conf    → databaselist.gisportal.id│
│  /etc/nginx/conf.d/nas.conf                       │
│  - file.gisportal.id/super-apps/ → QNAP OSS       │
└──────────────┬───────────────────────────────────┘
               │ proxy_pass 127.0.0.1:8091
               ▼
    ┌──────────────────────────────┐
    │  geonet-console Container    │
    │  PHP 8.3 + Laravel 12        │
    │  PHP-FPM + Nginx (in-cont)   │
    │  supervisord                 │
    │  Port: :8091                 │
    └──────────┬───────────────────┘
               │
    ┌──────────┴──────────────────┐
    │  audit-postgres Container   │
    │  PostgreSQL 15              │
    │  - databaselist_app         │
    │  - databaselist_audit       │
    └─────────────────────────────┘

External:
  QNAP OSS (10.100.1.10:8010) — avatar storage
  LDAP AD  (10.100.1.40)      — authentication
  SQL Server (10.100.1.25)    — DB registry read

Docker Compose (geonet-console)

services:
  geonet-console:
    build: .
    ports:
      - "127.0.0.1:8091:80"
    env_file: .env
    depends_on: [audit-postgres]
    restart: unless-stopped
    volumes:
      - app_storage:/var/www/html/storage

  audit-postgres:
    image: postgres:15
    env_file: .env
    restart: unless-stopped
    volumes:
      - audit_pg_data:/var/lib/postgresql/data

volumes:
  app_storage:
  audit_pg_data:

Stack Paths di Server

Stack Path
geonet-console /opt/stacks/geonet-console/
databaselist /opt/stacks/databaselist/
sqlservercheck /opt/stacks/sqlservercheck/
my-portal /opt/stacks/my-portal/

SSL

HTTPS via Let's Encrypt (certbot) di Nginx 10.100.1.24. Semua domain *.gisportal.id di-terminate di Nginx. Port 80 redirect → 443.