initial working

This commit is contained in:
2025-10-31 21:00:14 +01:00
commit c850cc6e7e
212 changed files with 24622 additions and 0 deletions

136
vm1/docker-compose.yml Normal file
View File

@@ -0,0 +1,136 @@
services:
mysql:
image: mariadb:10.11
container_name: mysql
restart: unless-stopped
environment:
MYSQL_ROOT_PASSWORD: ${MYSQL_ROOT_PASSWORD:-Ase@2025}
MYSQL_DATABASE: ${MYSQL_DATABASE:-ase_lar}
MYSQL_USER: ${MYSQL_USER:-ase_lar}
MYSQL_PASSWORD: ${MYSQL_PASSWORD:-ase_lar}
volumes:
- mysql_data:/var/lib/mysql
networks:
- app-network
ports:
- "3306:3306"
healthcheck:
test: ["CMD", "healthcheck.sh", "--connect", "--innodb_initialized"]
interval: 10s
timeout: 5s
retries: 3
labels:
logging: "promtail"
logging_jobname: "mysql"
redis:
image: redis:7-alpine
container_name: redis-master
restart: unless-stopped
command: redis-server --appendonly yes --requirepass ${REDIS_PASSWORD:-Ase@2025}
volumes:
- redis_data:/data
networks:
- app-network
ports:
- "6379:6379"
labels:
logging: "promtail"
orchestrator-1-load:
build: .
container_name: orchestrator-1-load
restart: unless-stopped
command: ["python", "-m", "src.load_orchestrator"]
environment:
DB_HOST: ${VIP:-192.168.1.210}
REDIS_HOST: ${VIP:-192.168.1.210}
ORCHESTRATOR_ID: 1
volumes:
- app-logs:/app/logs
networks:
- app-network
labels:
logging: "promtail"
orchestrator-2-elab:
build: .
container_name: orchestrator-2-elab
restart: unless-stopped
command: ["python", "-m", "src.elab_orchestrator"]
environment:
DB_HOST: ${VIP:-192.168.1.210}
REDIS_HOST: ${VIP:-192.168.1.210}
ORCHESTRATOR_ID: 2
volumes:
- app-logs:/app/logs
networks:
- app-network
labels:
logging: "promtail"
orchestrator-3-send:
build: .
container_name: orchestrator-3-send
restart: unless-stopped
command: ["python", "-m", "src.send_orchestrator"]
environment:
DB_HOST: ${VIP:-192.168.1.210}
REDIS_HOST: ${VIP:-192.168.1.210}
ORCHESTRATOR_ID: 3
volumes:
- app-logs:/app/logs
networks:
- app-network
labels:
logging: "promtail"
ftp-server-1:
build: .
container_name: ftp-server-1
restart: unless-stopped
command: ["python", "-m", "src.ftp_csv_receiver"]
environment:
DB_HOST: ${VIP:-192.168.1.210}
REDIS_HOST: ${VIP:-192.168.1.210}
FTP_INSTANCE_ID: 1
volumes:
- app-logs:/app/logs
networks:
- app-network
expose:
- "21"
labels:
logging: "promtail"
haproxy:
image: haproxy:2.8-alpine
container_name: haproxy
restart: unless-stopped
volumes:
- ./haproxy.cfg:/usr/local/etc/haproxy/haproxy.cfg:ro
networks:
- app-network
ports:
- "21:21"
- "30000-30009:30000-30009"
- "8404:8404"
keepalived:
image: osixia/keepalived:2.0.20
container_name: keepalived
restart: unless-stopped
cap_add:
- NET_ADMIN
network_mode: host
environment:
KEEPALIVED_PRIORITY: 100
KEEPALIVED_VIRTUAL_IPS: "${VIP:-192.168.1.210}"
promtail:
image: grafana/promtail:2.9.3
container_name: promtail
restart: unless-stopped
volumes:
- ./promtail-config.yml:/etc/promtail/config.yml:ro
- /var/run/docker.sock:/var/run/docker.sock:ro
networks:
- app-network
networks:
app-network:
volumes:
mysql_data:
redis_data:
app-logs: