3.2 KiB
3.2 KiB
Migration Report: Setup on docker1 (Ubuntu 24.04)
Datum: 10.02.2026
Ziel: Einrichtung einer sauberen Entwicklungsumgebung ("Greenfield") auf der neuen VM docker1 (10.10.81.2).
1. System- & Docker-Konfiguration
Vor der Installation der Anwendungen mussten grundlegende Systemanpassungen vorgenommen werden, um Docker auf Ubuntu 24.04 lauffähig zu machen.
- Docker-Rechte: Der Benutzer wurde der Gruppe
dockerhinzugefügt (sudo usermod -aG docker $USER), umsudofür Docker-Befehle zu vermeiden. - DNS-Fix: Es gab massive Probleme mit der DNS-Auflösung innerhalb von Docker-Containern (Konflikt mit
systemd-resolvedund Stub-Resolver auf127.0.0.53).- Lösung:
systemd-resolvedwurde deaktiviert und/etc/resolv.confwurde manuell auf Google DNS (8.8.8.8) gesetzt. - Befehle:
sudo systemctl stop systemd-resolved sudo systemctl disable systemd-resolved sudo rm /etc/resolv.conf echo -e 'nameserver 8.8.8.8\nnameserver 8.8.4.4' | sudo tee /etc/resolv.conf sudo systemctl restart docker
- Lösung:
2. Gitea Installation (Docker Compose)
Gitea wurde als zentrale Versionsverwaltung eingerichtet.
- Methode: Docker Compose mit PostgreSQL.
- Herausforderung: Die automatische Admin-Erstellung über Umgebungsvariablen (
GITEA__admin__...) schlug fehl (Race Condition oder Image-Bug). - Lösung: Manuelle Installation über das Web-Interface.
- Konfiguration (
docker-compose.yml):version: "3" services: db: image: postgres:16 restart: always environment: POSTGRES_USER: gitea POSTGRES_PASSWORD: 'secure_password' POSTGRES_DB: gitea volumes: - ./postgres:/var/lib/postgresql/data networks: - gitea-network healthcheck: test: ["CMD-SHELL", "pg_isready -U gitea -d gitea"] interval: 5s timeout: 5s retries: 5 gitea: image: gitea/gitea:1.21 restart: always networks: - gitea-network ports: - "3000:3000" - "2222:22" volumes: - ./gitea:/data - /etc/timezone:/etc/timezone:ro - /etc/localtime:/etc/localtime:ro depends_on: db: condition: service_healthy networks: gitea-network: external: false - Zugriff:
http://10.10.81.2:3000
3. Gemini CLI Umgebung
Die Gemini CLI wurde nicht nativ installiert, sondern als isolierte Docker-Umgebung eingerichtet, um Konsistenz zu gewährleisten.
- Ansatz: Custom Docker Image (
gemini-dev-env) gesteuert durch ein Shell-Skript (startgemini.sh). - *Dateien:
gemini.Dockerfile: Basiert aufnode:20-slim, installiert Python, Git und@google/gemini-cli.startgemini.sh: Baut das Image (falls nötig) und startet den Container mit gemountetem Projektverzeichnis..env: Enthält denGEMINI_API_KEY.
- *Workflow:
- Dateien manuell erstellt.
chmod +x startgemini.sh- Start via
./startgemini.sh-> Startet interaktive Session im Container.
Status
✅ System ist bereit. Gitea läuft, Gemini CLI ist einsatzbereit.