Files
flutter_tank_web_app/webserver/installDocker/README.md

2.1 KiB

Flutter Tank Web App - Docker Deployment

Dieser Ordner enthält alle notwendigen Dateien für das Docker-Deployment der Flutter Tank Web App.

📋 Voraussetzungen

  • Docker muss auf dem Server installiert sein
  • Port 8888 muss verfügbar sein

🚀 Deployment

1. Ordner auf Server kopieren

Kopieren Sie den kompletten webserver Ordner auf Ihren Server:

scp -r webserver user@your-server:/path/to/destination/

2. In den installDocker Ordner wechseln

cd /path/to/destination/webserver/installDocker

3. Deployment ausführen

./deploy.sh

Das Script führt automatisch folgende Schritte aus:

  • Stoppt und entfernt bestehende Container
  • Baut das Docker Image
  • Startet den Container auf Port 8888
  • Zeigt den Status an

🌐 Zugriff

Nach erfolgreichem Deployment ist die App erreichbar unter:

  • Web App: http://your-server:8888
  • Health Check: http://your-server:8888/health

🔧 Nützliche Befehle

# Logs anzeigen
docker logs flutter-tank-web-container

# Logs live verfolgen
docker logs -f flutter-tank-web-container

# Container stoppen
docker stop flutter-tank-web-container

# Container neustarten
docker restart flutter-tank-web-container

# Container und Image entfernen
docker stop flutter-tank-web-container
docker rm flutter-tank-web-container
docker rmi flutter-tank-web

📁 Dateien

  • Dockerfile - Docker Image Definition (nginx:alpine mit Flutter Web Build)
  • nginx.conf - Nginx Konfiguration mit Gzip, Caching und Flutter Routing
  • deploy.sh - Automatisches Deployment-Script
  • README.md - Diese Dokumentation

🔒 Sicherheit

Die nginx.conf enthält bereits:

  • Security Headers (X-Frame-Options, X-Content-Type-Options, X-XSS-Protection)
  • Gzip Kompression für bessere Performance
  • Caching für statische Assets (1 Jahr)
  • Client-side Routing Support für Flutter

🐛 Troubleshooting

Container startet nicht:

docker logs flutter-tank-web-container

Port bereits in Verwendung: Ändern Sie in deploy.sh die Variable PORT=8888 auf einen anderen Port.

Berechtigungsprobleme:

chmod +x deploy.sh