software steht so weit.

jetzt build + docker build und testen
This commit is contained in:
br committed 2026-10-02 13:25:34 +02:00
1 parent 42f0c0accb
commit ca6cdcca63
90 files changed
+10298 -480

No files matched your search

+9
View File
@@ -0,0 +1,9 @@
# Image: lokal gebaut (docker build -t sultan:latest .) oder aus der Registry
SULTAN_IMAGE=sultan:latest
# SULTAN_IMAGE=git.everdc.eu/chmln-app-dev/sultan:v0.1.0
# Einladung vom Server: docker compose exec sultan-server sultan token invite --tenant=…
SULTAN_TOKEN=
# Gruppe des Docker-Sockets: getent group docker | cut -d: -f3
DOCKER_GID=
+30
View File
@@ -0,0 +1,30 @@
# sultan agent auf einem Docker-Host (Backend).
#
# cp .env.example .env && $EDITOR .env # SULTAN_TOKEN, DOCKER_GID
# install -d -m 0700 -o 65532 -g 65532 suldata
# docker compose up -d
#
# network_mode: host ist Absicht:
# - Backend-Adresse: der Agent meldet die Host-IP (Route zum Server bzw.
# --backend-interface=wt0), nicht die Container-IP aus dem Bridge-Netz.
# - Knoten-ID: Default ist der Hostname – mit Host-Netz der des Hosts statt
# der zufälligen Container-ID.
services:
sultan-agent:
image: ${SULTAN_IMAGE:-sultan:latest}
container_name: sultan-agent
restart: unless-stopped
network_mode: host
command: ["sultan", "agent", "--data-dir=/suldata", "--config-dir=none"]
environment:
# Ausgabe von `sultan token invite`; nach dem ersten Start nicht mehr nötig,
# stehen lassen ist harmlos.
SULTAN_TOKEN: ${SULTAN_TOKEN:-}
# Lesezugriff auf den Docker-Socket für den nonroot-User (UID 65532).
group_add:
- "${DOCKER_GID:?DOCKER_GID setzen: getent group docker | cut -d: -f3}"
volumes:
# :ro schützt nur die Socket-Datei, nicht die API – der Agent nutzt
# ausschließlich lesende Aufrufe (Container-Liste, Events).
- /var/run/docker.sock:/var/run/docker.sock:ro
- ./suldata:/suldata # node.key (0600) und node.json – persistent halten!