#!/bin/bash # Container bauen und (neu) starten – auf dem Server ausführen: /deploy/update-docker.sh set -euo pipefail cd "$(dirname "$(readlink -f "$0")")/.." # Neuen Code holen, falls das Projekt per Git auf den Server kam if [ -d .git ]; then git pull --ff-only fi # Beim ersten Mal: .env mit zufälligem Token anlegen if [ ! -f .env ]; then cp .env.example .env sed -i "s/^SM_TOKEN=.*/SM_TOKEN=$(openssl rand -hex 32)/" .env chmod 600 .env # Mit sudo gestartet: .env trotzdem dem eigentlichen Benutzer geben, sonst kann er den Token nicht lesen if [ -n "${SUDO_USER:-}" ]; then chown "$SUDO_USER": .env fi echo ".env wurde angelegt. Token für P42-F.W.:" grep '^SM_TOKEN=' .env | cut -d= -f2 fi docker compose up -d --build docker image prune -f >/dev/null sleep 5 docker compose ps