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