Lucas Orth f5bdb9a988 deploy-kit zum Gitea-Template-Repo umbauen
Statt eines zweiten Repos wird deploy-kit selbst die Vorlage. Ein Template
kopiert das gesamte Repo, die Projektdateien muessen also im Wurzel-
verzeichnis liegen - template/ ist entsprechend aufgeloest.

- bootstrap.sh entfaellt: das Template uebernimmt seine Aufgabe, und
  Gitea kopiert serverseitig, funktioniert also auch bei privatem Repo.
- .gitea/template laesst Gitea ${REPO_NAME} in README.md und
  docker-compose.yml ersetzen. Projektname, Image und container_name
  stimmen damit ohne Handarbeit, offen bleibt nur der Port.
- CLAUDE.md zeigt auf DEPLOY.md, damit die Konventionen beim Arbeiten am
  erzeugten Projekt gelesen werden.
- DEPLOY.md liegt jetzt nur noch einmal - die Kopie im geplanten zweiten
  Repo waere unweigerlich auseinandergelaufen.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-08-20 19:29:31 +02:00

${REPO_NAME}

Aus der Vorlage deploy-kit erzeugt.

Einrichten

1. Port setzen. Den App-Namen hat Gitea beim Anlegen aus dem Repo-Namen eingesetzt. Offen ist nur noch der Port:

sed -i "s/__PORT__/3000/g" docker-compose.yml Dockerfile

Auf den Port anpassen, auf dem die App tatsaechlich lauscht.

2. Dockerfile anpassen. Die Vorlage ist fuer Node mit TypeScript-Build.

3. Build- und Test-Schritte in .gitea/workflows/deploy.yml einkommentieren.

4. Healthcheck in docker-compose.yml auf einen echten Endpoint zeigen lassen. Er ist das Gate des Deploy-Schritts - zeigt er ins Leere, schlaegt jeder Deploy fehl.

5. Secret DOTENV anlegen: Einstellungen -> Actions -> Secrets, mit dem kompletten .env-Inhalt, mehrzeilig.

6. Proxy Host im Nginx Proxy Manager: ${REPO_NAME}.lucas-orth.de -> ${REPO_NAME} : Port aus Schritt 1.

7. Deployen:

git tag v1.0.0 && git push origin v1.0.0

Pruefen, bevor der erste Tag faellt

grep -n '__APP__\|__PORT__\|\${REPO_NAME}' docker-compose.yml Dockerfile

Kein Treffer heisst: alles ersetzt.

Falls in docker-compose.yml ${IMAGE_TAG:-latest} verstuemmelt ist, hat die Template-Ersetzung zu viel angefasst - dann docker-compose.yml aus .gitea/template streichen und die Platzhalter von Hand setzen.

Konventionen

DEPLOY.md - verbindlich, liegt im Projekt.

MIGRATION.md gilt nur, wenn diese App vorher schon manuell auf dem Server lief. Bei einem neuen Projekt kann die Datei geloescht werden.

Description
No description provided
Readme 44 KiB
Languages
Dockerfile 100%