version: '3' networks: drone: external: false sentry: external: false nexus: external: false gitea: external: false youtrack: external: false xwiki: external: false swagger: external: false sonar: external: false asyncapi: external: false services: smtp: restart: unless-stopped image: fgribreau/smtp-to-sendgrid-gateway environment: - SENDGRID_API=SENDGRID-API-KEY networks: - drone - sentry - gitea - youtrack - sonar drone-db: image: postgres:12 restart: always environment: - POSTGRES_USER=drone - POSTGRES_PASSWORD=drone - POSTGRES_DB=drone networks: - drone volumes: - ./drone-postgres:/var/lib/postgresql/data drone-server: image: drone/drone:1 volumes: - ./drone_ci_data:/data restart: always networks: - drone ports: - "127.0.0.1:880:80" - "127.0.0.1:8443:443" environment: - DRONE_USER_CREATE=username:tormakris,admin:true - DRONE_ADMIN=tormakris - DRONE_AGENTS_ENABLED=true - DRONE_GITEA_SERVER=https://git.kmlabz.com - DRONE_GITEA_PRIVATE_MODE=true - DRONE_SERVER_HOST=drone.kmlabz.com - DRONE_SERVER_PROTO=https - DRONE_GITEA_CLIENT_ID=GITEA-ID - DRONE_GITEA_CLIENT_SECRET=GITEA-SECRET - DRONE_RPC_SECRET=DRONE-SECRET - DRONE_DATABASE_DRIVER=postgres - DRONE_DATABASE_DATASOURCE=postgres://drone:drone@drone-db:5432/postgres?sslmode=disable - DRONE_DATABASE_SECRET=DATABASE-SECRET - DRONE_GITEA_SKIP_VERIFY=false - DRONE_GIT_ALWAYS_AUTH=true depends_on: - drone-db drone-agent: image: drone/agent:1 restart: always depends_on: [ drone-server ] networks: - drone volumes: - /var/run/docker.sock:/var/run/docker.sock environment: - DRONE_RPC_PROTO=https - DRONE_RUNNER_CAPACITY=2 - DRONE_RUNNER_NAME=celeron - DRONE_RPC_HOST=drone.kmlabz.com - DRONE_RPC_SECRET=DRONE-SECRET sentry-redis: image: redis:6 networks: - sentry sentry-memcached: image: memcached:1 networks: - sentry sentry-postgres: image: postgres:12 environment: POSTGRES_USER: sentry POSTGRES_PASSWORD: sentry POSTGRES_DB: sentry networks: - sentry volumes: - ./sentry_postgres:/var/lib/postgresql/data sentry: image: sentry:9 ports: - "127.0.0.1:9000:9000" networks: - sentry environment: SENTRY_SECRET_KEY: 'SENTRY-SECRET' SENTRY_POSTGRES_HOST: sentry-postgres SENTRY_DB_USER: sentry SENTRY_DB_PASSWORD: sentry SENTRY_REDIS_HOST: sentry-redis SENTRY_MEMCACHED_HOST: sentry-memcached SENTRY_SERVER_EMAIL: sentry@kmlabz.com SENTRY_EMAIL_HOST: smtp depends_on: - sentry-postgres - sentry-redis - sentry-memcached - smtp volumes: - ./sentry-data:/var/lib/sentry/files sentry-cron: image: sentry:9 command: "sentry run cron" networks: - sentry environment: SENTRY_SECRET_KEY: 'SENTRY-SECRET' SENTRY_POSTGRES_HOST: sentry-postgres SENTRY_DB_USER: sentry SENTRY_DB_PASSWORD: sentry SENTRY_REDIS_HOST: sentry-redis SENTRY_MEMCACHED_HOST: sentry-memcached SENTRY_SERVER_EMAIL: sentry@kmlabz.com SENTRY_EMAIL_HOST: stmp depends_on: - sentry-postgres - sentry-redis - sentry-memcached - smtp volumes: - ./sentry-data:/var/lib/sentry/files sentry-worker: image: sentry:9 command: "sentry run worker" networks: - sentry environment: SENTRY_SECRET_KEY: 'SENTRY-SECRET' SENTRY_POSTGRES_HOST: sentry-postgres SENTRY_DB_USER: sentry SENTRY_DB_PASSWORD: sentry SENTRY_REDIS_HOST: sentry-redis SENTRY_MEMCACHED_HOST: sentry-memcached SENTRY_SERVER_EMAIL: sentry@kmlabz.com SENTRY_EMAIL_HOST: smtp depends_on: - sentry-postgres - sentry-redis - sentry-memcached - smtp volumes: - ./sentry-data:/var/lib/sentry/files nexus: image: sonatype/nexus3 networks: - nexus volumes: - ./nexus-data:/nexus-data ports: - "127.0.0.1:8081:8081" - "127.0.0.1:4269:4269" depends_on: - smtp gitea-db: image: postgres:12 restart: always environment: - POSTGRES_USER=gitea - POSTGRES_PASSWORD=gitea - POSTGRES_DB=gitea networks: - gitea volumes: - ./gitea-postgres:/var/lib/postgresql/data gitea-server: image: gitea/gitea:1 environment: - USER_UID=1003 - USER_GID=1003 - DB_TYPE=postgres - DB_HOST=gitea-db:5432 - DB_NAME=gitea - DB_USER=gitea - DB_PASSWD=gitea restart: always networks: - gitea volumes: - ./gitea:/data - /etc/timezone:/etc/timezone:ro - /etc/localtime:/etc/localtime:ro ports: - "127.0.0.1:3001:3000" - "2222:22" depends_on: - gitea-db - smtp youtrack: image: jetbrains/youtrack:2020.1.659 restart: always depends_on: - smtp networks: - youtrack ports: - "127.0.0.1:8069:8080" volumes: - ./youtrack/data:/opt/youtrack/data - ./youtrack/conf:/opt/youtrack/conf - ./youtrack/logs:/opt/youtrack/logs - ./youtrack/backups:/opt/youtrack/backups xwiki: image: xwiki:stable-postgres-tomcat depends_on: - xwiki-db networks: - xwiki volumes: - ./xwiki:/usr/local/xwiki ports: - "127.0.0.1:6980:8080" environment: - DB_USER=xwiki - DB_PASSWORD=xwiki - DB_DATABASE=xwiki - DB_HOST=xwiki-db xwiki-db: image: postgres:12 volumes: - ./postgres-xwiki:/var/lib/postgresql/data environment: - POSTGRES_PASSWORD=xwiki - POSTGRES_USER=xwiki - POSTGRES_DB=xwiki networks: - xwiki swagger-ui: image: swaggerapi/swagger-ui networks: - swagger ports: - "127.0.0.1:8082:8080" environment: URLS: "[ { name: \"Input Service\", url: \"https://git.kmlabz.com/birbnetes/swagger-docs/raw/branch/master/input.yml\"}, { name: \"Storage Service\", url: \"https://git.kmlabz.com/birbnetes/swagger-docs/raw/branch/master/storage.yml\" }, { name: \"Extractor Service\", url: \"https://git.kmlabz.com/birbnetes/swagger-docs/raw/branch/master/extractor.yaml\" }, {name: \"Output Service (RDB)\", url: \"https://git.kmlabz.com/birbnetes/swagger-docs/raw/branch/master/output-service-rdb.yml\"} ]" sonar: image: sonarqube:community depends_on: - sonar-db networks: - sonar volumes: - ./sonar/conf:/opt/sonarqube/conf - ./sonar/data:/opt/sonarqube/data - ./sonar/extensions:/opt/sonarqube/extensions ports: - "127.0.0.1:8989:9000" dns: - 1.1.1.1 - 8.8.8.8 environment: - SONARQUBE_JDBC_URL=jdbc:postgresql://sonar-db:5432/sonar - SONARQUBE_JDBC_PASSWORD=sonar - SONARQUBE_JDBC_USERNAME=sonar sonar-db: image: postgres:12 volumes: - ./postgres-sonar:/var/lib/postgresql/data environment: - POSTGRES_PASSWORD=sonar - POSTGRES_USER=sonar - POSTGRES_DB=sonar networks: - sonar dns: - 1.1.1.1 - 8.8.8.8 asyncapi: restart: unless-stopped image: registry.kmlabz.com/birbnetes/asyncapi ports: - "127.0.0.1:8282:80" networks: - asyncapi