Deine .bashrc
Deine .bashrc Datei ist ein Skript, das jedes mal bei deinem Shellzugriff aufgerufen wird. Hier kannst du verschiedene Werte setzen & Dein Leben dadurch leichter machen. Wir werden am Beispiel django jetzt Skripte fĂŒr dein Projekt entwickeln, die dir den Start deines Projekts erleichtern. AuĂerdem werden wir deinen python manage.py migrate
Befehl in einem Container absetzen, das erleichtert dir das Leben bei einem ganz schön langen Befehl.
Skripte anlegen
Lege bei dir in der Repository auf dem Level deines docker-compose.yml
folgende Dateien an:
touch run.bash migrate.bash
chmod +x run.bash migrate.bash
Folgenden Inhalt brauchen deine Skripte:run.bash
Hier kannst du deinen Start-Befehl mit allen Optionen einfĂŒgenIch nutze -f, wegen dem speziellen Dateinamen mit –build Baue Ich die images neu vor Containerstart
#!/bin/bash
docker compose -f docker-compose.development.yml up --build
migrate.bash
Mit exec -it container_name sh -c
können wir unseren migrate Befehl absetzen. Alles in AnfĂŒhrungszeichen wird direkt im Container ausgefĂŒhrt.
docker exec -it meine_app sh -c "python manage.py makemigrations && python manage.py migrate"
Weil wir den container namen in der migrate.bash
nutzen, muss du jetzt noch deine docker-compose Datei anpassen:
services:
meine_app:
# wir nutzen den Container Namen in migrate.bash
container_name: meine_app
Skripte in der .bashrc hinzufĂŒgen
FĂŒge deine Skripte deiner .bashrc (oder bei mac .zshrc) Hinzu. Die .bashrc / .zshrc befinden sich in deinem home – Verzeichnis.
code ~/.bashrc
vi ~/.bashrc
Wenn du nun “run” als App-Startbefehl nutzen willst und “migrate” als migrierbefehl, kannst du Folgendes hinzufĂŒgen:
# selfmade build and run scripts
alias run="./run.bash"
alias migrate="./migrate.bash"
Du kannst natĂŒrlich deine Skripte anders nennen, und den Befehl zum ausfĂŒhren der Skripte auch⊠Es macht aber Sinn, wenn du mehrere Projekte starten / migrieren musst, den Befehl einheitlich zu halten.
Jetzt kannst du nĂ€mlich in jedem Projekt ein run.bash hinzufĂŒgen. Solange der name des Skriptes “run.bash” bleibt, reicht es jetzt run
auszufĂŒhren – Deine App startet.
Du kannst den Skriptinhalt auch verÀndern, wenn du bei unterschiedlichen Projekten deine App verschieden Starten willst.
Happy Coden!
Dein Ruben
Leave a Reply