Files
flutter_tank_web_app/deploy.sh

86 lines
2.7 KiB
Bash
Executable File

#!/bin/bash
# Farben
GREEN='\033[0;32m'
BLUE='\033[0;34m'
YELLOW='\033[1;33m'
RED='\033[0;31m'
NC='\033[0m'
echo -e "${BLUE}═══════════════════════════════════════════════════════${NC}"
echo -e "${BLUE} Flutter Tank App - Docker Deployment${NC}"
echo -e "${BLUE}═══════════════════════════════════════════════════════${NC}"
echo ""
# Prüfen ob Docker installiert ist
if ! command -v docker &> /dev/null; then
echo -e "${RED}❌ Docker ist nicht installiert!${NC}"
echo -e "${YELLOW}Installieren Sie Docker: https://docs.docker.com/get-docker/${NC}"
exit 1
fi
if ! command -v docker-compose &> /dev/null; then
echo -e "${RED}❌ Docker Compose ist nicht installiert!${NC}"
echo -e "${YELLOW}Installieren Sie Docker Compose: https://docs.docker.com/compose/install/${NC}"
exit 1
fi
echo -e "${GREEN}✅ Docker und Docker Compose gefunden${NC}"
echo ""
# Build Option
echo -e "${YELLOW}Wählen Sie eine Option:${NC}"
echo "1) Nur Flutter Web App bauen"
echo "2) Flutter Web App + Proxy Server bauen"
echo "3) Alles bauen und starten"
echo "4) Nur starten (ohne neu zu bauen)"
echo "5) Stoppen"
echo "6) Logs anzeigen"
read -p "Option (1-6): " option
case $option in
1)
echo -e "${BLUE}🔨 Baue Flutter Web App...${NC}"
docker build -t flutter-tank-web:latest .
echo -e "${GREEN}✅ Build abgeschlossen!${NC}"
echo -e "${YELLOW}Zum Starten: docker run -p 8080:80 flutter-tank-web:latest${NC}"
;;
2)
echo -e "${BLUE}🔨 Baue alle Images...${NC}"
docker-compose build
echo -e "${GREEN}✅ Build abgeschlossen!${NC}"
;;
3)
echo -e "${BLUE}🔨 Baue und starte alle Services...${NC}"
docker-compose up -d --build
echo ""
echo -e "${GREEN}✅ Services gestartet!${NC}"
echo ""
echo -e "${YELLOW}📡 Verfügbare Endpoints:${NC}"
echo -e " Flutter Web App: ${GREEN}http://localhost:8080${NC}"
echo -e " Proxy Server: ${GREEN}http://localhost:3000${NC}"
echo ""
echo -e "${YELLOW}📊 Status prüfen:${NC}"
docker-compose ps
;;
4)
echo -e "${BLUE}🚀 Starte Services...${NC}"
docker-compose up -d
echo -e "${GREEN}✅ Services gestartet!${NC}"
docker-compose ps
;;
5)
echo -e "${BLUE}🛑 Stoppe Services...${NC}"
docker-compose down
echo -e "${GREEN}✅ Services gestoppt!${NC}"
;;
6)
echo -e "${BLUE}📋 Zeige Logs...${NC}"
docker-compose logs -f
;;
*)
echo -e "${RED}❌ Ungültige Option${NC}"
exit 1
;;
esac