Skip to content

Installation

DATAZONE Control wird als Docker-Compose-Stack bereitgestellt. Die Installation umfasst Backend, Frontend, Datenbank und Reverse-Proxy.

Voraussetzungen

  • Linux-Server mit Docker und Docker Compose
  • Mindestens 2 GB RAM und 10 GB Speicherplatz
  • Netzwerkzugriff auf die zu verwaltenden Hosts (Port 443 ausgehend fuer Agents)

Installation mit Docker Compose

1. Repository klonen

bash
git clone https://gitlab.datazone.de/kidev/datazone-control.git
cd datazone-control

2. Umgebungsvariablen konfigurieren

Erstellen Sie eine .env-Datei im Projektverzeichnis:

env
# Datenbank
POSTGRES_PASSWORD=IhrSicheresPasswort
DATABASE_URL=postgresql://datazone:IhrSicheresPasswort@db:5432/datazone_control

# Backend
SECRET_KEY=IhrGeheimerSchluessel
CORS_ORIGINS=https://control.ihredomain.de

# Optional: E-Mail fuer Reports
SMTP_HOST=smtp.ihredomain.de
SMTP_PORT=587
SMTP_USER=reports@ihredomain.de
SMTP_PASSWORD=SmtpPasswort

3. Stack starten

bash
docker compose up -d --build

Dies startet folgende Container:

ContainerDienstPort
datazone-dbPostgreSQL-Datenbank5432 (intern)
datazone-redisRedis Message Queue6379 (intern)
datazone-backendFlask API + SocketIO5001 (intern)
datazone-frontendReact (Nginx)80 (intern)
datazone-nginxReverse Proxy8080

4. Erreichbarkeit pruefen

Oeffnen Sie https://control.ihredomain.de im Browser. Sie sollten den Login-Bildschirm sehen.

Reverse Proxy (Optional)

Fuer Produktivumgebungen empfehlen wir einen vorgelagerten Reverse Proxy mit SSL:

Nginx-Beispiel

nginx
server {
    listen 443 ssl;
    server_name control.ihredomain.de;

    ssl_certificate /etc/letsencrypt/live/control.ihredomain.de/fullchain.pem;
    ssl_certificate_key /etc/letsencrypt/live/control.ihredomain.de/privkey.pem;

    location / {
        proxy_pass http://127.0.0.1:8080;
        proxy_http_version 1.1;
        proxy_set_header Upgrade $http_upgrade;
        proxy_set_header Connection "upgrade";
        proxy_set_header Host $host;
        proxy_set_header X-Real-IP $remote_addr;
    }
}

Wichtig

WebSocket-Support (Upgrade und Connection-Header) muss aktiviert sein, da DATAZONE Control WebSockets fuer Echtzeit-Updates, Remote Shell und Tunnel verwendet.

Tunnel-Ports

Fuer die Tunnel-Funktionalitaet muessen die Ports 20000-25000 auf dem Backend-Server erreichbar sein. Diese werden dynamisch fuer SSH-, RDP- und HTTP-Tunnel verwendet.

bash
# Firewall-Regel (ufw)
ufw allow 20000:25000/tcp

Update

bash
cd /pfad/zu/datazone-control
git pull
docker compose up -d --build

Die Datenbank-Migrationen werden automatisch beim Start des Backends ausgefuehrt.

Naechste Schritte

Nach der Installation fahren Sie mit dem Ersten Login fort.

DATAZONE Control Documentation