Zum Inhalt springen

Draw.io/Server: Unterschied zwischen den Versionen

Aus Foxwiki
K Textersetzung - „z.B.“ durch „z. .B. “
 
(10 dazwischenliegende Versionen von 2 Benutzern werden nicht angezeigt)
Zeile 1: Zeile 1:
'''{{BASEPAGENAME}}''' - Beschreibung
'''Draw.io/Server'''


== Beschreibung ==
== Beschreibung ==


== Installation ==
== Installation ==
==== Docker ====
=== Docker ===
<syntaxhighlight lang="bash" highlight="1" copy line>
<syntaxhighlight lang="bash" highlight="1" copy line>
sudo apt install -y docker.io docker-compose-plugin
sudo apt install -y docker.io docker-compose-plugin
Zeile 10: Zeile 10:


; Container starten
; Container starten
<syntaxhighlight lang="bash" highlight="1" copy line>
<syntaxhighlight lang="bash" highlight="" copy line>
sudo docker run -d \
sudo docker run -d \
  --name drawio \
--name drawio \
  --restart unless-stopped \
--restart unless-stopped \
  -p 8080:8080 -p 8443:8443 \
-p 8080:8080 -p 8443:8443 \
  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.&nbsp;.B.&nbsp; als ''.drawio''/Export) oder über angebundene Storage-Integrationen


==== Docker mit TLS-Ausstellung ====
=== Docker mit Reverse-Proxy ===
* DNS ''drawio.example.com'' muss auf den Server zeigen
 
* Inbound TCP 80/443 muss erreichbar sein
; Verzeichnisstruktur
* HTTP-01 Challenge über Port 80
<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
; Container starten
<syntaxhighlight lang="bash" highlight="1" copy line>
<syntaxhighlight lang="bash" highlight="1" copy line>
sudo docker run -d \
docker compose up -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
</syntaxhighlight>
</syntaxhighlight>


[[FIXME]]: Zeilen erklären
; Status prüfen
 
<syntaxhighlight lang="bash" highlight="1" copy line>
; Hinweis
docker compose ps
:* Diese Variante terminiert TLS im Container (Tomcat)
</syntaxhighlight>
:* Alternativ kann TLS am Reverse Proxy terminiert werden


== Aufruf ==
== Aufruf ==
Zeile 68: Zeile 117:
| 0 || Erfolg
| 0 || Erfolg
|-
|-
| >0 || Fehler
| >0 || Fehler
|}
|}


Zeile 119: Zeile 168:
-->
-->


[[Kategorie:new]]
[[Kategorie:Linux/Grafik]]
[[Kategorie:Docker]]


</noinclude>
</noinclude>

Aktuelle Version vom 23. Juni 2026, 22:42 Uhr

Draw.io/Server

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

Docker mit 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

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

Projekt