prvng_platform/infrastructure/docker/docker-compose.cicd.yaml

77 lines
1.8 KiB
YAML
Raw Normal View History

2025-10-07 10:59:52 +01:00
# CI/CD Mode - Add automation and API server
# Usage: docker-compose -f infrastructure/docker/docker-compose.yaml -f infrastructure/docker/docker-compose.multi-user.yaml -f infrastructure/docker/docker-compose.cicd.yaml up
2025-10-07 10:59:52 +01:00
services:
orchestrator:
environment:
- PROVISIONING_MODE=cicd
- ORCHESTRATOR_MAX_CONCURRENT_TASKS=20
- ORCHESTRATOR_API_ENABLED=true
- ORCHESTRATOR_WEBHOOK_ENABLED=true
deploy:
resources:
limits:
cpus: '4.0'
memory: 4096M
control-center:
environment:
- PROVISIONING_MODE=cicd
- CONTROL_CENTER_API_KEYS_ENABLED=true
- CONTROL_CENTER_WEBHOOK_ENABLED=true
# Add Jenkins integration (optional)
jenkins:
profiles:
- cicd-jenkins
image: jenkins/jenkins:lts
container_name: provisioning-jenkins
ports:
- "8090:8080"
- "50000:50000"
volumes:
- jenkins-data:/var/jenkins_home
- /var/run/docker.sock:/var/run/docker.sock
environment:
- JENKINS_OPTS=--prefix=/jenkins
user: root
restart: unless-stopped
networks:
- provisioning-net-frontend
deploy:
resources:
limits:
cpus: '2.0'
memory: 2048M
# Add GitLab Runner (optional)
gitlab-runner:
profiles:
- cicd-gitlab
image: gitlab/gitlab-runner:latest
container_name: provisioning-gitlab-runner
volumes:
- gitlab-runner-config:/etc/gitlab-runner
- /var/run/docker.sock:/var/run/docker.sock
restart: unless-stopped
networks:
- provisioning-net-frontend
deploy:
resources:
limits:
cpus: '2.0'
memory: 2048M
volumes:
jenkins-data:
driver: local
gitlab-runner-config:
driver: local
networks:
provisioning-net-frontend:
driver: bridge
provisioning-net-backend:
driver: bridge