version: '3.3' networks: devops: name: devops external: true services: teamcity-server: restart: always container_name: teamcity-server user: root ports: - "8111:8111" volumes: - '/teamcity/data:/data/teamcity_server/datadir' - '/teamcity/logs:/opt/teamcity/logs' networks: - devops image: jetbrains/teamcity-server #command: sleep infinity teamcity-agent-1: restart: always container_name: teamcity-agent-1 environment: - 'SERVER_URL=teamcity-server:8111' - DOCKER_IN_DOCKER=start user: root privileged: true networks: - devops volumes: - '/teamcity/agent:/teamcity_agent/conf' - '/var/run/docker.sock:/var/run/docker.sock' - '/opt/buildagent/system:/opt/buildagent/system' - '/opt/buildagent/work:/opt/buildagent/work' - '/opt/buildagent/plugins:/opt/buildagent/plugins' - '/opt/buildagent/temp:/opt/buildagent/temp' - '/opt/buildagent/tools:/opt/buildagent/tools' image: jetbrains/teamcity-agent:2023.11.1-linux-sudo # image: jetbrains/teamcity-agent:2023.05.2-linux-sudo # image: jetbrains/teamcity-agent:latest watchtower: image: containrrr/watchtower container_name: watchtower volumes: - /var/run/docker.sock:/var/run/docker.sock command: teamcity-server https_portal: container_name: https_portal image: "steveltn/https-portal:1.23.0" restart: unless-stopped user: "root" networks: - devops # internal network ports: - "80:80" - "443:443" environment: STAGE: "production" # Use Let's Encrypt production server WEBSOCKET: "true" # Enable websocket support DEBUG: "true" RENEW_MARGIN_DAYS: 30 CLIENT_MAX_BODY_SIZE: 0 # FORCE_RENEW: 'true' DOMAINS: > teamcity.phx-erp.de -> teamcity-server:8111 volumes: - ./https_portal/data:/var/lib/https-portal # ssl_certs, vhost.d, htdocs - ./https_portal/log:/var/log/nginx # nginx logs depends_on: - teamcity-server