Voraussetzungen
Kurz: ein Linux-Rechner mit einem halbwegs aktuellen Docker. Ausführlich sieht das so aus.
Der Host
Abschnitt betitelt „Der Host“Du brauchst Linux mit Docker Engine 24 oder neuer (Docker-API 1.43 oder neuer). Unraid 6.12 und 7.x laufen, jede andere Distribution genauso. Die CPU darf x86_64 oder arm64 sein - ein Raspberry Pi 4 oder 5, ein Ampere- oder Graviton-Server oder Apple Silicon unter Linux gehen alle, weil jedes Envoryx-Image für beide Architekturen gebaut wird.
Mit Docker spricht Envoryx über den Docker-Socket (/var/run/docker.sock). Darüber startet
und stoppt es deine Projekt-Container. Es fasst nur an, was es selbst markiert hat
(envoryx.managed=true) - die anderen Container auf dem Rechner bleiben also deine.
Wie viel CPU und Arbeitsspeicher du brauchst, hängt kaum an Envoryx selbst, das ist ein kleines Go-Programm. Es hängt an deinen Projekten, denn jedes bringt seinen eigenen Webserver, seine Runtime, Datenbank und Dienste mit. Soll ein einzelnes Projekt nicht den ganzen Rechner belegen, setzt du Ressourcenlimits.
Envoryx arbeitet mit zwei Ordnern, ein dritter ist optional:
| Im Container | Was dort liegt |
|---|---|
/config |
Der eigene Zustand von Envoryx: SQLite-Datenbank, erzeugte Konfiguration, Zertifikate, SSH-Schlüssel, Caches, Logs. |
/projects |
Deine Projekte, eines pro Ordner. |
/backups |
Optional. Hängst du ihn ein, landen die Projekt-Backups hier statt in /config/backups. |
/config muss auf einem lokalen Dateisystem liegen. Auf NFS oder SMB kann SQLite seine
Datenbank kaputtmachen, ohne dass es jemand merkt - deshalb startet Envoryx dort gar nicht erst.
Ein Detail erklärt den roten Hinweis, der manchmal oben auf dem Dashboard auftaucht. Die
Projekt-Container bekommen deine Dateien per Docker-Bind-Mount, und Docker löst diese Pfade auf
dem Host auf, nicht im Envoryx-Container. Envoryx schaut sich deshalb seinen eigenen Container
an, um herauszufinden, welche Host-Ordner hinter /projects und /config stecken. Klappt das
einmal nicht, sagt dir dieser Hinweis Bescheid, und du trägst die Host-Pfade selbst in
ENVORYX_PROJECTS_HOST_PATH und ENVORYX_CONFIG_HOST_PATH ein.
| Port | Wofür |
|---|---|
8787 |
Weboberfläche und API. |
80 / 443 |
Der eingebaute Reverse Proxy, damit Projekte Namen wie https://shop.test bekommen. Optional; jeder freie Host-Port geht. |
2222 |
Der eingebaute SSH-Server für Remote-Interpreter der IDE und SFTP. Optional. |
20000-20999 |
Projekt-Ports: Webserver, Anwendungsserver, Datenbank-Ports und so weiter. |
Die Projekt-Ports mappst du nicht am Envoryx-Container - die veröffentlichen die
Projekt-Container selbst. Kommt der Bereich etwas anderem in die Quere, verschiebst du ihn mit
ENVORYX_PORT_RANGE_START und ENVORYX_PORT_RANGE_END.