infralab/ansible/roles/jenkins/templates/docker-compose.yaml.j2

24 lines
961 B
Django/Jinja

services:
jenkins:
image: "{{ jenkins_image_name }}"
container_name: jenkins
restart: unless-stopped
ports:
- "{{ jenkins_http_port }}:8080"
- "{{ jenkins_agent_port }}:50000"
environment:
JAVA_OPTS: "-Djenkins.install.runSetupWizard=false -Dcasc.jenkins.config=/var/jenkins_home/casc.yaml"
JENKINS_ADMIN_ID: "{{ jenkins_admin_user }}"
JENKINS_ADMIN_PASSWORD: ${JENKINS_ADMIN_PASSWORD}
volumes:
- "{{ jenkins_data_dir }}:/var/jenkins_home"
# Если нужно, чтобы pipeline-ы запускали Docker на хосте — расскомментируйте:
- /var/run/docker.sock:/var/run/docker.sock
# healthcheck, чтобы Ansible/оркестратор видел состояние
healthcheck:
test: ["CMD", "bash", "-lc", "curl -fsSL http://127.0.0.1:8080/login || exit 1"]
interval: 30s
timeout: 5s
retries: 10
start_period: 30s