Zum Inhalt springen

Draw.io/Server: Unterschied zwischen den Versionen

Aus Foxwiki
DanielZorin (Diskussion | Beiträge)
Zeile 17: Zeile 17:
   jgraph/drawio
   jgraph/drawio
</syntaxhighlight>
</syntaxhighlight>
# Image laden und Container starten
# Den Namen `''drawio''` festlegen
# Autostart
# Portweiterleitung. 8080 für HTTP, 8443 – integriertes HTTPS
# Name des Image


[[FIXME]]: Zeilen erklären


; Hinweis
; Hinweis
: Der Server ist meist zustandslos
: Der Server ist meist zustandslos
:* Diagramme werden clientseitig gespeichert (z.B. als ''.drawio''/Export) oder über angebundene Storage-Integrationen
:* Diagramme werden clientseitig gespeichert (z.B. als ''.drawio''/Export) oder über angebundene Storage-Integrationen
==== Reverse-Proxy ====
; Verzeichnisstruktur
<syntaxhighlight lang="bash" highlight="1" copy line>
sudo mkdir /srv/drawio
</syntaxhighlight>
<syntaxhighlight lang="bash" highlight="1" copy line>
cd /srv/drawio
</syntaxhighlight>
; docker-compose.yml
<syntaxhighlight lang="yaml" highlight="" copy line>
services:
  drawio:
    image: jgraph/drawio
    container_name: drawio
    restart: unless-stopped
    expose:
      - "8080"
    networks:
      - web
  caddy:
    image: caddy:2-alpine
    container_name: caddy
    restart: unless-stopped
    ports:
      - "80:80"
      - "443:443"
    volumes:
      - ./Caddyfile:/etc/caddy/Caddyfile:ro
      - caddy_data:/data
      - caddy_config:/config
    networks:
      - web
networks:
  web:
volumes:
  caddy_data:
  caddy_config:
</syntaxhighlight>
* ''expose'' stellt Draw.io nur im Docker-Netz bereit (keine direkte Host-Portfreigabe)
* Caddy terminiert TLS und veröffentlicht nur 80/443
; Caddyfile
<syntaxhighlight lang="ini" highlight="" copy line>
drawio.example.com {
  reverse_proxy drawio:8080
}
</syntaxhighlight>
* ''drawio.example.com'' muss per DNS auf den Host zeigen
; Container starten
<syntaxhighlight lang="bash" highlight="1" copy line>
docker compose up -d
</syntaxhighlight>
; Status prüfen
<syntaxhighlight lang="bash" highlight="1" copy line>
docker compose ps
</syntaxhighlight>


==== Docker mit TLS-Ausstellung ====
==== Docker mit TLS-Ausstellung ====

Version vom 4. Februar 2026, 16:21 Uhr

Draw.io/Server - Beschreibung

Beschreibung

Installation

Docker

sudo apt install -y docker.io docker-compose-plugin
Container starten
sudo docker run -d \
  --name drawio \
  --restart unless-stopped \
  -p 8080:8080 -p 8443:8443 \
  jgraph/drawio
  1. Image laden und Container starten
  2. Den Namen `drawio` festlegen
  3. Autostart
  4. Portweiterleitung. 8080 für HTTP, 8443 – integriertes HTTPS
  5. Name des Image


Hinweis
Der Server ist meist zustandslos
  • Diagramme werden clientseitig gespeichert (z.B. als .drawio/Export) oder über angebundene Storage-Integrationen

Reverse-Proxy

Verzeichnisstruktur
sudo mkdir /srv/drawio
cd /srv/drawio
docker-compose.yml
services:
  drawio:
    image: jgraph/drawio
    container_name: drawio
    restart: unless-stopped
    expose:
      - "8080"
    networks:
      - web

  caddy:
    image: caddy:2-alpine
    container_name: caddy
    restart: unless-stopped
    ports:
      - "80:80"
      - "443:443"
    volumes:
      - ./Caddyfile:/etc/caddy/Caddyfile:ro
      - caddy_data:/data
      - caddy_config:/config
    networks:
      - web

networks:
  web:

volumes:
  caddy_data:
  caddy_config:
  • expose stellt Draw.io nur im Docker-Netz bereit (keine direkte Host-Portfreigabe)
  • Caddy terminiert TLS und veröffentlicht nur 80/443
Caddyfile
drawio.example.com {
  reverse_proxy drawio:8080
}
  • drawio.example.com muss per DNS auf den Host zeigen
Container starten
docker compose up -d
Status prüfen
docker compose ps

Docker mit TLS-Ausstellung

  • DNS drawio.example.com muss auf den Server zeigen
  • Inbound TCP 80/443 muss erreichbar sein
  • HTTP-01 Challenge über Port 80
Container starten
sudo docker run -d \
  --name drawio \
  --restart unless-stopped \
  -e LETS_ENCRYPT_ENABLED=true \
  -e PUBLIC_DNS=drawio.example.com \
  -p 80:80 -p 443:8443 \
  jgraph/drawio

FIXME: Zeilen erklären

Hinweis
  • Diese Variante terminiert TLS im Container (Tomcat)
  • Alternativ kann TLS am Reverse Proxy terminiert werden

Aufruf

Optionen

Unix GNU Parameter Beschreibung

Parameter

Umgebungsvariablen

Exit-Status

Wert Beschreibung
0 Erfolg
>0 Fehler

Anwendung

Problembehebung

Konfiguration

Dateien

Datei Beschreibung


Anhang

Siehe auch



Dokumentation

Links

Projekt

Weblinks