#exposec - criando branch com ambiente para exposec.
This commit is contained in:
25
Makefile
25
Makefile
@@ -5,7 +5,7 @@ ENV_FILE = .env.$(ENV)
|
|||||||
PROJECT_NAME = attendancesystem-$(ENV)
|
PROJECT_NAME = attendancesystem-$(ENV)
|
||||||
NETWORK_NAME = attendancesystem-network
|
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
|
# 🧹 Reset Network
|
||||||
@@ -14,25 +14,6 @@ reset-network:
|
|||||||
@echo "🧹 Removendo rede antiga (se existir)..."
|
@echo "🧹 Removendo rede antiga (se existir)..."
|
||||||
-docker network rm $(NETWORK_NAME) 2>/dev/null || true
|
-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
|
# 🧩 Subir apenas APP
|
||||||
# ===============================
|
# ===============================
|
||||||
@@ -60,7 +41,6 @@ install:
|
|||||||
docker compose \
|
docker compose \
|
||||||
--project-name $(PROJECT_NAME) \
|
--project-name $(PROJECT_NAME) \
|
||||||
--env-file $(ENV_FILE) \
|
--env-file $(ENV_FILE) \
|
||||||
--profile infra \
|
|
||||||
--profile app \
|
--profile app \
|
||||||
-f $(COMPOSE_FILE) \
|
-f $(COMPOSE_FILE) \
|
||||||
pull
|
pull
|
||||||
@@ -68,7 +48,6 @@ install:
|
|||||||
docker compose \
|
docker compose \
|
||||||
--project-name $(PROJECT_NAME) \
|
--project-name $(PROJECT_NAME) \
|
||||||
--env-file $(ENV_FILE) \
|
--env-file $(ENV_FILE) \
|
||||||
--profile infra \
|
|
||||||
--profile app \
|
--profile app \
|
||||||
-f $(COMPOSE_FILE) \
|
-f $(COMPOSE_FILE) \
|
||||||
up -d --pull never
|
up -d --pull never
|
||||||
@@ -111,7 +90,6 @@ nuke-project:
|
|||||||
docker compose \
|
docker compose \
|
||||||
--project-name $(PROJECT_NAME) \
|
--project-name $(PROJECT_NAME) \
|
||||||
--env-file $(ENV_FILE) \
|
--env-file $(ENV_FILE) \
|
||||||
--profile infra \
|
|
||||||
--profile app \
|
--profile app \
|
||||||
-f $(COMPOSE_FILE) \
|
-f $(COMPOSE_FILE) \
|
||||||
down --volumes --remove-orphans
|
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
|
- 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 "✅ Projeto $(PROJECT_NAME) limpo (containers, volumes, rede e imagens)."
|
||||||
@echo " Imagens de infraestrutura preservadas."
|
|
||||||
|
|||||||
@@ -1,40 +1,8 @@
|
|||||||
services:
|
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 =================
|
# ================= 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:
|
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"]
|
profiles: ["app"]
|
||||||
ports:
|
ports:
|
||||||
- "${BACKEND_ATTENDANCESYSTEM_API_INTERNAL_PORT}:${BACKEND_ATTENDANCESYSTEM_API_INTERNAL_PORT}"
|
- "${BACKEND_ATTENDANCESYSTEM_API_INTERNAL_PORT}:${BACKEND_ATTENDANCESYSTEM_API_INTERNAL_PORT}"
|
||||||
@@ -71,7 +39,7 @@ services:
|
|||||||
restart: "no"
|
restart: "no"
|
||||||
|
|
||||||
attendancesystem-app:
|
attendancesystem-app:
|
||||||
image: ${DOCKER_REPO}/attendancesystem-frontend:${IMAGEM_RELEASE_1_1}
|
image: ${DOCKER_REPO}/attendancesystem-frontend:${IMAGEM_RELEASE_1_3}
|
||||||
profiles: ["app"]
|
profiles: ["app"]
|
||||||
volumes:
|
volumes:
|
||||||
- config-volume:/config-inject:ro
|
- config-volume:/config-inject:ro
|
||||||
@@ -91,5 +59,4 @@ networks:
|
|||||||
name: attendancesystem-network
|
name: attendancesystem-network
|
||||||
|
|
||||||
volumes:
|
volumes:
|
||||||
mongodb_data:
|
|
||||||
config-volume:
|
config-volume:
|
||||||
42
install.sh
42
install.sh
@@ -303,12 +303,12 @@ show_summary() {
|
|||||||
echo -e " Porta : ${BOLD}${SYSTEM_BASE_PORT}${NC}"
|
echo -e " Porta : ${BOLD}${SYSTEM_BASE_PORT}${NC}"
|
||||||
echo ""
|
echo ""
|
||||||
echo -e " ${BOLD}[3] Portas Internas${NC}"
|
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 " Backend Attendance : ${BOLD}${BACKEND_ATTENDANCESYSTEM_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 " Frontend Attendance : ${BOLD}${FRONTEND_ATTENDANCESYSTEM_APP_INTERNAL_PORT}${NC}"
|
||||||
echo ""
|
echo ""
|
||||||
echo -e " ${BOLD}[4] Portas Externas${NC}"
|
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 " Backend Attendance : ${BOLD}${BACKEND_ATTENDANCESYSTEM_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 " Frontend Attendance : ${BOLD}${FRONTEND_ATTENDANCESYSTEM_APP_EXTERNAL_PORT}${NC}"
|
||||||
echo ""
|
echo ""
|
||||||
echo -e " ${BOLD}[5] Banco de Dados${NC}"
|
echo -e " ${BOLD}[5] Banco de Dados${NC}"
|
||||||
echo -e " MongoDB : ${BOLD}${MONGO_PORT}${NC}"
|
echo -e " MongoDB : ${BOLD}${MONGO_PORT}${NC}"
|
||||||
@@ -356,20 +356,9 @@ ASPNETCORE_ENVIRONMENT=Production
|
|||||||
DOCKER_REPO=seventhltda
|
DOCKER_REPO=seventhltda
|
||||||
IMAGEM_LATEST=latest
|
IMAGEM_LATEST=latest
|
||||||
IMAGEM_UNSTABLE_LATEST=unstable-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_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
|
NGINX_DEFAULT_PORT=80
|
||||||
|
|
||||||
# ── MongoDB ───────────────────────────────────────────────
|
|
||||||
MONGO_PORT=${MONGO_PORT}
|
|
||||||
MONGODB_CONNECTION_STRING=mongodb://mongodb:27017/suitedb
|
|
||||||
MONGODB_DATABASE=suitedb
|
|
||||||
|
|
||||||
# ── Sistema Base ──────────────────────────────────────────
|
# ── Sistema Base ──────────────────────────────────────────
|
||||||
SYSTEM_BASE_CONN=${SYSTEM_BASE_CONN}
|
SYSTEM_BASE_CONN=${SYSTEM_BASE_CONN}
|
||||||
SYSTEM_BASE_HOST=${SYSTEM_BASE_HOST}
|
SYSTEM_BASE_HOST=${SYSTEM_BASE_HOST}
|
||||||
@@ -380,34 +369,16 @@ INTERNAL_HOST=${INTERNAL_HOST}
|
|||||||
EXTERNAL_HOST=${EXTERNAL_HOST}
|
EXTERNAL_HOST=${EXTERNAL_HOST}
|
||||||
|
|
||||||
# ── Backend ───────────────────────────────────────────────
|
# ── 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_INTERNAL_PORT=${BACKEND_ATTENDANCESYSTEM_API_INTERNAL_PORT}
|
||||||
BACKEND_ATTENDANCESYSTEM_API_EXTERNAL_PORT=${BACKEND_ATTENDANCESYSTEM_API_EXTERNAL_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_APPLICATIONNAME=AttendanceSystem
|
||||||
BACKEND_ATTENDANCESYSTEM_API_NAME=attendancesystem-api
|
BACKEND_ATTENDANCESYSTEM_API_NAME=attendancesystem-api
|
||||||
|
|
||||||
# ── Frontend ──────────────────────────────────────────────
|
# ── 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_INTERNAL_PORT=${FRONTEND_ATTENDANCESYSTEM_APP_INTERNAL_PORT}
|
||||||
FRONTEND_ATTENDANCESYSTEM_APP_EXTERNAL_PORT=${FRONTEND_ATTENDANCESYSTEM_APP_EXTERNAL_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 ─────────────────────────────────────────────
|
||||||
KEEPALIVE_ATTENDANCE_SYSTEM_BACKEND_HOST=${KEEPALIVE_BACKEND}
|
KEEPALIVE_ATTENDANCE_SYSTEM_BACKEND_HOST=${KEEPALIVE_BACKEND}
|
||||||
KEEPALIVE_ATTENDANCE_SYSTEM_FRONTEND_HOST=${KEEPALIVE_FRONTEND}
|
KEEPALIVE_ATTENDANCE_SYSTEM_FRONTEND_HOST=${KEEPALIVE_FRONTEND}
|
||||||
@@ -430,15 +401,12 @@ start_environment() {
|
|||||||
echo -e " ║ ✅ Instalação concluída com sucesso! ║"
|
echo -e " ║ ✅ Instalação concluída com sucesso! ║"
|
||||||
echo -e " ╚══════════════════════════════════════════════╝${NC}"
|
echo -e " ╚══════════════════════════════════════════════╝${NC}"
|
||||||
echo ""
|
echo ""
|
||||||
echo -e " Acesse o sistema em:"
|
echo -e " Menu do usuário: Monitoramento V1"
|
||||||
echo -e " ${CYAN}${BOLD} ${SYSTEM_BASE_CONN}${NC}"
|
|
||||||
echo -e " Menu do usuário: Monitoramento (beta)"
|
|
||||||
echo ""
|
echo ""
|
||||||
echo -e " Comandos úteis (dentro da pasta ${BOLD}${INSTALL_DIR}${NC}):"
|
echo -e " Comandos úteis (dentro da pasta ${BOLD}${INSTALL_DIR}${NC}):"
|
||||||
echo -e " ${BOLD}make install${NC} → sobe o projeto"
|
echo -e " ${BOLD}make install${NC} → sobe o projeto"
|
||||||
echo -e " ${BOLD}make update${NC} → atualiza 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 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-project${NC} → limpa o projeto"
|
||||||
echo -e " ${BOLD}make nuke${NC} → limpa tudo (cuidado!)"
|
echo -e " ${BOLD}make nuke${NC} → limpa tudo (cuidado!)"
|
||||||
echo ""
|
echo ""
|
||||||
|
|||||||
Reference in New Issue
Block a user