---
# System prepended metadata

title: Robodoc Azure Zugriff

---

# Robodoc Azure Zugriff

1. Public key generieren und Jan schicken
2. ssh RobodocAdmin@13.69.50.227

- Auf dem Server im Homeverzeichnis des Users liegt der Robodoc-Ordner.
- Außerdem Startscripte runRobo.sh und killRobo.sh
- runRobo:
    - git checkout backend
    - git pull
    - docker-compose build/up
    - docker image prune
    - aktualisieren/ausführen/aufräumen

- killRobo stoppt alle laufenden Container

### Nützliche Commands:
- docker logs -t robodoc-backend
    - zeigt logs eines detachten Containers
- docker exec -it robodoc-backend /bin/bash
    - wechselt in einen laufenden Container
- ./runRoboND.sh
    - führt docker-compose aus ohne zu detachen
- docker system prune -a
    - alle alten Images löschen (können schnell mal ein paar GB sein)
- sudo !! 
    - letztes command nochmal mit sudo ausführen :) Docker operationen müssen evtl mit sudo ausgeführt werden.
- docker ps 
    - zeigt laufende Container und z.B. gemappte Ports an
- docker stats 
    - zeigt Performance info der aktuellen Container an

### Aufbau:
- runRobo.sh startet ~/RoboDoc/docker-compose.yml
- docker-compose.yml startet robodoc-frontend und robodoc-backend container
- beide Container kommunizieren über ein Docker-internes Netzwerk
- Lösungsidee für CORS-Problem: Adressen der Container dynamisch in ENV-Variablen im docker-compose.yml schreiben (erledigt) und im Frontend und Backend process.env.VARIABLE verwenden, um anderen Container anzusprechen anstatt hardcode Adresse. 