diff --git a/Makefile b/Makefile index 2afe786..a8c1379 100644 --- a/Makefile +++ b/Makefile @@ -5,7 +5,7 @@ ENV_FILE = .env.$(ENV) PROJECT_NAME = attendancesystem-$(ENV) NETWORK_NAME = attendancesystem-network -.PHONY: infra app install update reset-network nuke nuke-project +.PHONY: app install update reset-network nuke nuke-project # =============================== # 🧹 Reset Network @@ -14,25 +14,6 @@ reset-network: @echo "🧹 Removendo rede antiga (se existir)..." -docker network rm $(NETWORK_NAME) 2>/dev/null || true -# =============================== -# πŸ— Subir apenas INFRA -# =============================== -infra: reset-network - @echo "πŸ“₯ Baixando imagens de INFRA ($(PROJECT_NAME))..." - docker compose \ - --project-name $(PROJECT_NAME) \ - --env-file $(ENV_FILE) \ - --profile infra \ - -f $(COMPOSE_FILE) \ - pull - @echo "πŸš€ Subindo apenas INFRA ($(PROJECT_NAME))..." - docker compose \ - --project-name $(PROJECT_NAME) \ - --env-file $(ENV_FILE) \ - --profile infra \ - -f $(COMPOSE_FILE) \ - up -d --pull never - # =============================== # 🧩 Subir apenas APP # =============================== @@ -60,7 +41,6 @@ install: docker compose \ --project-name $(PROJECT_NAME) \ --env-file $(ENV_FILE) \ - --profile infra \ --profile app \ -f $(COMPOSE_FILE) \ pull @@ -68,7 +48,6 @@ install: docker compose \ --project-name $(PROJECT_NAME) \ --env-file $(ENV_FILE) \ - --profile infra \ --profile app \ -f $(COMPOSE_FILE) \ up -d --pull never @@ -111,7 +90,6 @@ nuke-project: docker compose \ --project-name $(PROJECT_NAME) \ --env-file $(ENV_FILE) \ - --profile infra \ --profile app \ -f $(COMPOSE_FILE) \ down --volumes --remove-orphans @@ -120,4 +98,3 @@ nuke-project: - docker images --format '{{.Repository}}:{{.Tag}}' | grep '^seventhltda/' | xargs -r docker rmi -f 2>/dev/null || true @echo "βœ… Projeto $(PROJECT_NAME) limpo (containers, volumes, rede e imagens)." - @echo " Imagens de infraestrutura preservadas." diff --git a/docker-compose.yml b/docker-compose.yml index 8d4cc5d..b3290be 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -1,40 +1,8 @@ services: - # ================= INFRA ================= - mongodb: - image: mongo:${IMAGEM_LATEST} - profiles: ["infra"] - ports: - - "${MONGO_PORT}:27017" - volumes: - - mongodb_data:/data/db - networks: - - app-network - healthcheck: - test: echo 'db.runCommand("ping").ok' | mongosh localhost:27017/test --quiet - interval: 10s - timeout: 5s - retries: 5 - # ================= BACKEND ================= - suite-api: - image: ${DOCKER_REPO}/suite-api:${IMAGEM_UNSTABLE_LATEST} - profiles: ["app"] - ports: - - "${BACKEND_SUITE_API_INTERNAL_PORT}:${BACKEND_SUITE_API_INTERNAL_PORT}" - environment: - - ASPNETCORE_ENVIRONMENT=${ASPNETCORE_ENVIRONMENT} - - MONGODB_CONNECTION_STRING=${MONGODB_CONNECTION_STRING} - - MONGODB_DATABASE=${MONGODB_DATABASE} - - SYSTEM_BASE_CONN=${SYSTEM_BASE_CONN} - - FRONTEND_CONN=${INTERNAL_HOST}:${FRONTEND_SUITE_APP_INTERNAL_PORT} - - KEEPALIVE_ATTENDANCE_SYSTEM_BACKEND_HOST=${KEEPALIVE_ATTENDANCE_SYSTEM_BACKEND_HOST} - - KEEPALIVE_ATTENDANCE_SYSTEM_FRONTEND_HOST=${KEEPALIVE_ATTENDANCE_SYSTEM_FRONTEND_HOST} - networks: - - app-network - attendancesystem-api: - image: ${DOCKER_REPO}/backend-attendance-system-api:${IMAGEM_RELEASE_1_1} + image: ${DOCKER_REPO}/backend-attendance-system-api:${IMAGEM_RELEASE_1_3} profiles: ["app"] ports: - "${BACKEND_ATTENDANCESYSTEM_API_INTERNAL_PORT}:${BACKEND_ATTENDANCESYSTEM_API_INTERNAL_PORT}" @@ -71,7 +39,7 @@ services: restart: "no" attendancesystem-app: - image: ${DOCKER_REPO}/attendancesystem-frontend:${IMAGEM_RELEASE_1_1} + image: ${DOCKER_REPO}/attendancesystem-frontend:${IMAGEM_RELEASE_1_3} profiles: ["app"] volumes: - config-volume:/config-inject:ro @@ -91,5 +59,4 @@ networks: name: attendancesystem-network volumes: - mongodb_data: config-volume: \ No newline at end of file diff --git a/install.sh b/install.sh index 06658fc..4634abc 100644 --- a/install.sh +++ b/install.sh @@ -303,12 +303,12 @@ show_summary() { echo -e " Porta : ${BOLD}${SYSTEM_BASE_PORT}${NC}" echo "" echo -e " ${BOLD}[3] Portas Internas${NC}" - echo -e " Backend Suite/People/Attendance/Account : ${BOLD}${BACKEND_SUITE_API_INTERNAL_PORT}${NC} / ${BOLD}${BACKEND_PEOPLE_API_INTERNAL_PORT}${NC} / ${BOLD}${BACKEND_ATTENDANCESYSTEM_API_INTERNAL_PORT}${NC} / ${BOLD}${BACKEND_ACCOUNT_API_INTERNAL_PORT}${NC}" - echo -e " Frontend Suite/People/Attendance/Account : ${BOLD}${FRONTEND_SUITE_APP_INTERNAL_PORT}${NC} / ${BOLD}${FRONTEND_PEOPLE_APP_INTERNAL_PORT}${NC} / ${BOLD}${FRONTEND_ATTENDANCESYSTEM_APP_INTERNAL_PORT}${NC} / ${BOLD}${FRONTEND_ACCOUNT_APP_INTERNAL_PORT}${NC}" + echo -e " Backend Attendance : ${BOLD}${BACKEND_ATTENDANCESYSTEM_API_INTERNAL_PORT}${NC}" + echo -e " Frontend Attendance : ${BOLD}${FRONTEND_ATTENDANCESYSTEM_APP_INTERNAL_PORT}${NC}" echo "" echo -e " ${BOLD}[4] Portas Externas${NC}" - echo -e " Backend Suite/People/Attendance/Account : ${BOLD}${BACKEND_SUITE_API_EXTERNAL_PORT}${NC} / ${BOLD}${BACKEND_PEOPLE_API_EXTERNAL_PORT}${NC} / ${BOLD}${BACKEND_ATTENDANCESYSTEM_API_EXTERNAL_PORT}${NC} / ${BOLD}${BACKEND_ACCOUNT_API_EXTERNAL_PORT}${NC}" - echo -e " Frontend Suite/People/Attendance/Account : ${BOLD}${FRONTEND_SUITE_APP_EXTERNAL_PORT}${NC} / ${BOLD}${FRONTEND_PEOPLE_APP_EXTERNAL_PORT}${NC} / ${BOLD}${FRONTEND_ATTENDANCESYSTEM_APP_EXTERNAL_PORT}${NC} / ${BOLD}${FRONTEND_ACCOUNT_APP_EXTERNAL_PORT}${NC}" + echo -e " Backend Attendance : ${BOLD}${BACKEND_ATTENDANCESYSTEM_API_EXTERNAL_PORT}${NC}" + echo -e " Frontend Attendance : ${BOLD}${FRONTEND_ATTENDANCESYSTEM_APP_EXTERNAL_PORT}${NC}" echo "" echo -e " ${BOLD}[5] Banco de Dados${NC}" echo -e " MongoDB : ${BOLD}${MONGO_PORT}${NC}" @@ -356,20 +356,9 @@ ASPNETCORE_ENVIRONMENT=Production DOCKER_REPO=seventhltda IMAGEM_LATEST=latest IMAGEM_UNSTABLE_LATEST=unstable-latest -IMAGEM_RELEASE_1_1=1.1 -IMAGEM_RELEASE_1_2=1.2 IMAGEM_RELEASE_1_3=1.3 -IMAGEM_RELEASE_1_4=1.4 -IMAGEM_RELEASE_1_5=1.5 -IMAGEM_RELEASE_1_6=1.6 -IMAGEM_RELEASE_1_7=1.7 NGINX_DEFAULT_PORT=80 -# ── MongoDB ─────────────────────────────────────────────── -MONGO_PORT=${MONGO_PORT} -MONGODB_CONNECTION_STRING=mongodb://mongodb:27017/suitedb -MONGODB_DATABASE=suitedb - # ── Sistema Base ────────────────────────────────────────── SYSTEM_BASE_CONN=${SYSTEM_BASE_CONN} SYSTEM_BASE_HOST=${SYSTEM_BASE_HOST} @@ -380,34 +369,16 @@ INTERNAL_HOST=${INTERNAL_HOST} EXTERNAL_HOST=${EXTERNAL_HOST} # ── Backend ─────────────────────────────────────────────── -BACKEND_SUITE_API_INTERNAL_PORT=${BACKEND_SUITE_API_INTERNAL_PORT} -BACKEND_SUITE_API_EXTERNAL_PORT=${BACKEND_SUITE_API_EXTERNAL_PORT} - BACKEND_ATTENDANCESYSTEM_API_INTERNAL_PORT=${BACKEND_ATTENDANCESYSTEM_API_INTERNAL_PORT} BACKEND_ATTENDANCESYSTEM_API_EXTERNAL_PORT=${BACKEND_ATTENDANCESYSTEM_API_EXTERNAL_PORT} -BACKEND_PEOPLE_API_INTERNAL_PORT=${BACKEND_PEOPLE_API_INTERNAL_PORT} -BACKEND_PEOPLE_API_EXTERNAL_PORT=${BACKEND_PEOPLE_API_EXTERNAL_PORT} - -BACKEND_ACCOUNT_API_INTERNAL_PORT=${BACKEND_ACCOUNT_API_INTERNAL_PORT} -BACKEND_ACCOUNT_API_EXTERNAL_PORT=${BACKEND_ACCOUNT_API_EXTERNAL_PORT} - BACKEND_ATTENDANCESYSTEM_API_APPLICATIONNAME=AttendanceSystem BACKEND_ATTENDANCESYSTEM_API_NAME=attendancesystem-api # ── Frontend ────────────────────────────────────────────── -FRONTEND_SUITE_APP_INTERNAL_PORT=${FRONTEND_SUITE_APP_INTERNAL_PORT} -FRONTEND_SUITE_APP_EXTERNAL_PORT=${FRONTEND_SUITE_APP_EXTERNAL_PORT} - FRONTEND_ATTENDANCESYSTEM_APP_INTERNAL_PORT=${FRONTEND_ATTENDANCESYSTEM_APP_INTERNAL_PORT} FRONTEND_ATTENDANCESYSTEM_APP_EXTERNAL_PORT=${FRONTEND_ATTENDANCESYSTEM_APP_EXTERNAL_PORT} -FRONTEND_PEOPLE_APP_INTERNAL_PORT=${FRONTEND_PEOPLE_APP_INTERNAL_PORT} -FRONTEND_PEOPLE_APP_EXTERNAL_PORT=${FRONTEND_PEOPLE_APP_EXTERNAL_PORT} - -FRONTEND_ACCOUNT_APP_INTERNAL_PORT=${FRONTEND_ACCOUNT_APP_INTERNAL_PORT} -FRONTEND_ACCOUNT_APP_EXTERNAL_PORT=${FRONTEND_ACCOUNT_APP_EXTERNAL_PORT} - # ── Keepalive ───────────────────────────────────────────── KEEPALIVE_ATTENDANCE_SYSTEM_BACKEND_HOST=${KEEPALIVE_BACKEND} KEEPALIVE_ATTENDANCE_SYSTEM_FRONTEND_HOST=${KEEPALIVE_FRONTEND} @@ -430,15 +401,12 @@ start_environment() { echo -e " β•‘ βœ… InstalaΓ§Γ£o concluΓ­da com sucesso! β•‘" echo -e " β•šβ•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•${NC}" echo "" - echo -e " Acesse o sistema em:" - echo -e " ${CYAN}${BOLD} ${SYSTEM_BASE_CONN}${NC}" - echo -e " Menu do usuΓ‘rio: Monitoramento (beta)" + echo -e " Menu do usuΓ‘rio: Monitoramento V1" echo "" echo -e " Comandos ΓΊteis (dentro da pasta ${BOLD}${INSTALL_DIR}${NC}):" echo -e " ${BOLD}make install${NC} β†’ sobe o projeto" echo -e " ${BOLD}make update${NC} β†’ atualiza o projeto" echo -e " ${BOLD}make app${NC} β†’ sobe apenas a aplicaΓ§Γ£o" - echo -e " ${BOLD}make infra${NC} β†’ sobe apenas a infra (MongoDB)" echo -e " ${BOLD}make nuke-project${NC} β†’ limpa o projeto" echo -e " ${BOLD}make nuke${NC} β†’ limpa tudo (cuidado!)" echo ""