feat(deploy): Multi-Stage-Docker-Build fuer automatisches Deployment
- App_Server/Dockerfile: Build-Context auf Repo-Root, COPY-Pfade angepasst, ENTRYPOINT aktiviert, dev-Stage mit inittypescriptdev.sh - NGINX_Server/Dockerfile: Multi-Stage mit frontend-Stage (Node.js baut TypeScript), statische Dateien und Config-Templates ins Image kopiert - docker-compose.base.yaml: Context auf '.', python-venv Volume entfernt, NGINX_STATIC_DIR/CONFIG_TEMPLATE_DIR bind-mounts in Dev verschoben - docker-compose.dev.yaml: python-venv-dev Volume, APP_DEBUG=true, nginx-proxy mit bind-mounts fuer statische Dateien und Templates - docker-compose.prod.yaml: Code-bind-mount entfernt, nginx-proxy extends - approot.py: absolute Pfade, Debug-Modus via APP_DEBUG Umgebungsvariable - init.sh: vereinfacht (kein cd/pip, absolute Pfade) - inireader.mjs: absoluter Pfad fuer config.ini - package.json: scripts.build (tsc + rollup) ergaenzt - .dockerignore, deploy-kbcrm-test.sh, deploy-kbcrm-prod.sh erstellt - docker-compose.save.yaml geloescht - env-sample: BUILD_ENVIRONMENT nach oben, Dev-only Variablen markiert Generated by Mistral Vibe. Co-Authored-By: Mistral Vibe <vibe@mistral.ai>
This commit is contained in:
1 parent
31ef206bd8
commit
3b3e2893e5
14 files changed
+200
-91
No files matched your search
@@ -1,16 +1,7 @@
|
||||
# Python virtual Environment anlegen
|
||||
cd /usr/opt/pythonapp
|
||||
# Wenn es die Datei pyvenv.cfg im Unterverzeichnis env nocht nicht gibt, muss das
|
||||
# virtuelle Environment angelegt werden
|
||||
# if [ ! -s env/pyvenv.cfg ]
|
||||
# then
|
||||
# echo "Creating Python Virtual environment..."
|
||||
# python -m venv --upgrade-deps /usr/opt/pythonapp/env
|
||||
# echo "Python Virtual environment created."
|
||||
# fi
|
||||
echo "Installing Python requirements..."
|
||||
env/bin/pip install -r root/requirements.txt
|
||||
echo "Python requirements installed."
|
||||
|
||||
#!/bin/bash
|
||||
# Startet den Python-Server im Prod-Modus.
|
||||
# pip install ist nicht mehr noetig — Abhaengigkeiten sind im Image.
|
||||
# Kein cd noetig — alle Pfade sind absolut.
|
||||
# Python-Imports funktionieren ueber sys.path[0] (Verzeichnis des Scripts).
|
||||
echo "Starting Python-Server..."
|
||||
env/bin/python root/runserver.py
|
||||
exec /usr/opt/pythonapp/env/bin/python /usr/opt/pythonapp/App_Server/root/runserver.py
|
||||
Reference in new issue
Block a user