#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)
|
||||
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."
|
||||
|
||||
@@ -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:
|
||||
42
install.sh
42
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 ""
|
||||
|
||||
Reference in New Issue
Block a user