|
| 1 | +version: "3.9" |
| 2 | + |
| 3 | +services: |
| 4 | + |
| 5 | + testops: |
| 6 | + restart: always |
| 7 | + image: ${IMAGES_REGISTRY}/${IMAGES_REPO}/testops:${RELEASE_TO_DEPLOY} |
| 8 | + container_name: testops |
| 9 | + networks: |
| 10 | + - testops-net |
| 11 | + ports: |
| 12 | + - "${DEMO_INSTANCE_PORT}:${DEMO_INSTANCE_CONTAINER_PORT}" |
| 13 | + healthcheck: |
| 14 | + test: "curl -f http://localhost:${DEMO_INSTANCE_CONTAINER_PORT}/api/management/health || exit 1" |
| 15 | + interval: 30s |
| 16 | + timeout: 10s |
| 17 | + retries: 10 |
| 18 | + start_period: 20s |
| 19 | + environment: |
| 20 | + # Not required for DEMO installation |
| 21 | + # TLS_ENDPOINTS: ${TLS_ENDPOINTS} |
| 22 | + SPRING_PROFILES_ACTIVE: compose |
| 23 | + SPRING_CLOUD_CONSUL_ENABLED: "false" |
| 24 | + SPRING_OUTPUT_ANSI_ENABLED: never |
| 25 | + ALLURE_JWT_SECRET: ${DEMO_INSTANCE_JWT_SECRET} |
| 26 | + ALLURE_SECURE: ${DEMO_INSTANCE_SECURE_COOKIE} |
| 27 | + ALLURE_JWT_ACCESS_TOKEN_VALIDITY_SECONDS: ${DEMO_INSTANCE_SESSION_DURATION} |
| 28 | + |
| 29 | + ALLURE_ENDPOINT: ${DEMO_INSTANCE_PROTO}://${DEMO_INSTANCE_HOST} |
| 30 | + ALLURE_CRYPTO_PASSWORD: ${DEMO_INSTANCE_CRYPTO_PASSWORD} |
| 31 | + # Deprecated starting from 5.6.0 |
| 32 | + # Enable if you are deploying 5.5.1 |
| 33 | + # ALLURE_SECURITY_USER_NAME: admin |
| 34 | + # ALLURE_SECURITY_USER_PASSWORD: ${DEMO_INSTANCE_ |
| 35 | + ALLURE_MAIL_ROOT: ${FIRST_ADMIN_EMAIL} |
| 36 | + ALLURE_REGISTRATION_AUTOAPPROVE: false |
| 37 | + ALLURE_REGISTRATION_ENABLED: false |
| 38 | + ALLURE_REGISTRATION_DEFAULT_ROLE: ROLE_GUEST |
| 39 | + |
| 40 | + SPRING_SESSION_STORE_TYPE: REDIS |
| 41 | + SPRING_DATA_REDIS_HOST: ${DEMO_INSTANCE_REDIS_HOST} |
| 42 | + SPRING_DATA_REDIS_PORT: ${DEMO_INSTANCE_REDIS_PORT} |
| 43 | + SPRING_DATA_REDIS_PASSWORD: ${DEMO_INSTANCE_REDIS_PASS} |
| 44 | + SPRING_DATA_REDIS_DATABASE: ${DEMO_INSTANCE_REDIS_DB} |
| 45 | + |
| 46 | + # SPRING_MAIL_ are mandatory for all types of authentication |
| 47 | + SPRING_MAIL_HOST: ${SMTP_HOST} |
| 48 | + SPRING_MAIL_PORT: ${SMTP_PORT} |
| 49 | + SPRING_MAIL_USERNAME: ${SMTP_USERNAME} |
| 50 | + SPRING_MAIL_PASSWORD: ${SMTP_PASSWORD} |
| 51 | + SPRING_MAIL_PROPERTIES_MAIL_SMTP_AUTH: ${SMTP_AUTH} |
| 52 | + SPRING_MAIL_PROPERTIES_MAIL_SMTP_STARTTLS_ENABLE: ${SMTP_STARTTLS_ENABLE} |
| 53 | + SPRING_MAIL_PROPERTIES_MAIL_SMTP_STARTTLS_REQUIRED: ${SMTP_STARTTLS_REQUIRED} |
| 54 | + SPRING_MAIL_PROPERTIES_MAIL_SMTP_SSL_ENABLE: ${SMTP_SSL_ENABLE} |
| 55 | + SPRING_MAIL_PROPERTIES_MAIL_SMTP_SSL_TRUST: ${SMTP_SSL_TRUST} |
| 56 | + ALLURE_MAIL_FROM: ${SMTP_MAIL_FROM} |
| 57 | + # Not required for DEMO installation |
| 58 | + # TLS_DB_ENDPOINTS: ${TLS_DB_ENDPOINTS} |
| 59 | + SPRING_DATASOURCE_URL: jdbc:postgresql://${DEMO_INSTANCE_TESTOPS_DB_HOST}:${DEMO_INSTANCE_TESTOPS_DB_PORT}/${DEMO_INSTANCE_TESTOPS_DB_NAME}?assumeMinServerVersion=11&ApplicationName=${DEMO_INSTANCE_TESTOPS_SERVICE_NAME} |
| 60 | + SPRING_DATASOURCE_USERNAME: ${DEMO_INSTANCE_TESTOPS_DB_USERNAME} |
| 61 | + SPRING_DATASOURCE_PASSWORD: ${DEMO_INSTANCE_TESTOPS_DB_PASS} |
| 62 | + SPRING_DATASOURCE_HIKARI_MAXIMUMPOOLSIZE: ${DEMO_INSTANCE_TESTOPS_DB_MAXIMUMPOOLSIZE} |
| 63 | + SPRING_DATASOURCE_HIKARI_CONNECTIONTIMEOUT: ${DEMO_INSTANCE_TESTOPS_DB_CONNECTIONTIMEOUT} |
| 64 | + |
| 65 | + SPRING_RABBITMQ_HOST: ${DEMO_INSTANCE_RABBIT_HOST} |
| 66 | + SPRING_RABBITMQ_PORT: ${DEMO_INSTANCE_RABBIT_PORT} |
| 67 | + SPRING_RABBITMQ_USERNAME: ${DEMO_INSTANCE_RABBIT_USER} |
| 68 | + SPRING_RABBITMQ_PASSWORD: ${DEMO_INSTANCE_RABBIT_PASS} |
| 69 | + SPRING_RABBITMQ_LISTENER_SIMPLE_MAXCONCURRENCY: ${DEMO_INSTANCE_RABBIT_MAXCONCURRENCY} |
| 70 | + ALLURE_UPLOAD_PARSE_CONSUMERSPERQUEUE: ${DEMO_INSTANCE_RABBIT_PARSE_CONSUMERSPERQUEUE} |
| 71 | + ALLURE_UPLOAD_STORE_CONSUMERSPERQUEUE: ${DEMO_INSTANCE_RABBIT_STORE_CONSUMERSPERQUEUE} |
| 72 | + |
| 73 | + ALLURE_BLOBSTORAGE_TYPE: S3 |
| 74 | + ALLURE_BLOBSTORAGE_S3_PATHSTYLEACCESS: ${DEMO_INSTANCE_S3_PATHSTYLE} |
| 75 | + ALLURE_BLOBSTORAGE_S3_ENDPOINT: ${DEMO_INSTANCE_S3_URL} |
| 76 | + ALLURE_BLOBSTORAGE_S3_BUCKET: ${DEMO_INSTANCE_S3_BUCKET} |
| 77 | + ALLURE_BLOBSTORAGE_S3_REGION: ${DEMO_INSTANCE_S3_REGION} |
| 78 | + ALLURE_BLOBSTORAGE_S3_ACCESSKEY: ${DEMO_INSTANCE_S3_ACCESS_KEY} |
| 79 | + ALLURE_BLOBSTORAGE_S3_SECRETKEY: ${DEMO_INSTANCE_S3_SECRET_KEY} |
| 80 | + ALLURE_BLOBSTORAGE_MAXCONCURRENCY: ${DEMO_INSTANCE_S3_MAXCONCURRENCY} |
| 81 | + ALLURE_SCHEDULER_CLEANER_BLOB_BATCHSIZE: ${DEMO_INSTANCE_SCHEDULER_CLEANER_BLOB_BATCHSIZE} |
| 82 | + ALLURE_TASKEXECUTOR_COREPOOLSIZE: ${DEMO_INSTANCE_TASKEXECUTOR_COREPOOLSIZE} |
| 83 | + |
| 84 | + MANAGEMENT_METRICS_EXPORT_PROMETHEUS_ENABLED: 'true' |
| 85 | + MANAGEMENT_HEALTH_DISKSPACE_ENABLED: 'false' |
| 86 | + MANAGEMENT_ENDPOINTS_WEB_EXPOSURE_INCLUDE: health,info,prometheus,configprops |
| 87 | + MANAGEMENT_ENDPOINT_HEALTH_CACHE_TIME-TO-LIVE: 15s |
| 88 | + LOGGING_LEVEL_IO_QAMETA_ALLURE: warn |
| 89 | + LOGGING_LEVEL_ORG_SPRINGFRAMEWORK_SECURITY: warn |
| 90 | + LOGGING_LEVEL_ORG_SPRINGFRAMEWORK: warn |
| 91 | + LOGGING_LEVEL_COM_ZAXXER_HIKARI: warn |
| 92 | + SERVER_ERROR_INCLUDE_STACKTRACE: always |
| 93 | + TZ: ${TZ} |
| 94 | + JAVA_TOOL_OPTIONS: > |
| 95 | + -XX:+UseG1GC |
| 96 | + -XX:+UseStringDeduplication |
| 97 | + -XX:MinHeapFreeRatio=15 |
| 98 | + -XX:MaxHeapFreeRatio=30 |
| 99 | + -Dsun.jnu.encoding=UTF-8 |
| 100 | + -Dfile.encoding=UTF-8 |
| 101 | + logging: |
| 102 | + driver: "json-file" |
| 103 | + options: |
| 104 | + max-size: "10mb" |
| 105 | + |
| 106 | + testops-db: |
| 107 | + restart: always |
| 108 | + image: postgres:15 |
| 109 | + container_name: testops-db |
| 110 | + networks: |
| 111 | + - testops-net |
| 112 | + volumes: |
| 113 | + - testops-db-volume:/var/lib/postgresql/data |
| 114 | + environment: |
| 115 | + TZ: ${TZ} |
| 116 | + POSTGRES_DB: ${DEMO_INSTANCE_TESTOPS_DB_NAME} |
| 117 | + POSTGRES_USER: ${DEMO_INSTANCE_TESTOPS_DB_USERNAME} |
| 118 | + POSTGRES_PASSWORD: ${DEMO_INSTANCE_TESTOPS_DB_PASS} |
| 119 | + |
| 120 | + redis: |
| 121 | + restart: always |
| 122 | + image: bitnami/redis:6.2 |
| 123 | + container_name: redis |
| 124 | + networks: |
| 125 | + - testops-net |
| 126 | + environment: |
| 127 | + TZ: ${TZ} |
| 128 | + REDIS_PASSWORD: ${DEMO_INSTANCE_REDIS_PASS} |
| 129 | + REDIS_PORT_NUMBER: ${DEMO_INSTANCE_REDIS_PORT} |
| 130 | + healthcheck: |
| 131 | + test: [ "CMD", "redis-cli", "ping" ] |
| 132 | + interval: 1s |
| 133 | + timeout: 3s |
| 134 | + retries: 30 |
| 135 | + |
| 136 | + rabbitmq: |
| 137 | + restart: always |
| 138 | + image: rabbitmq:3.9-management |
| 139 | + container_name: rabbitmq |
| 140 | + networks: |
| 141 | + - testops-net |
| 142 | + volumes: |
| 143 | + - rabbitmq-volume:/var/lib/rabbitmq |
| 144 | + environment: |
| 145 | + RABBITMQ_DEFAULT_USER: ${DEMO_INSTANCE_RABBIT_USER} |
| 146 | + RABBITMQ_DEFAULT_PASS: ${DEMO_INSTANCE_RABBIT_PASS} |
| 147 | + |
| 148 | + minio-local: |
| 149 | + restart: always |
| 150 | + image: bitnami/minio:2022 |
| 151 | + container_name: minio-local |
| 152 | + networks: |
| 153 | + - testops-net |
| 154 | + volumes: |
| 155 | + - minio-volume:/data |
| 156 | + environment: |
| 157 | + MINIO_ROOT_USER: ${DEMO_INSTANCE_S3_ACCESS_KEY} |
| 158 | + MINIO_ROOT_PASSWORD: ${DEMO_INSTANCE_S3_SECRET_KEY} |
| 159 | + MINIO_PROMETHEUS_AUTH_TYPE: 'public' |
| 160 | + ports: |
| 161 | + - "9000:9000" |
| 162 | + |
| 163 | + minio-local-provisioning: |
| 164 | + restart: "no" |
| 165 | + image: minio/mc |
| 166 | + container_name: minio-provisioning |
| 167 | + depends_on: |
| 168 | + - minio-local |
| 169 | + networks: |
| 170 | + - testops-net |
| 171 | + entrypoint: "/bin/sh -c" |
| 172 | + command: > |
| 173 | + "mc config host add ${DEMO_INSTANCE_S3_PROVIDER} ${DEMO_INSTANCE_S3_URL} ${DEMO_INSTANCE_S3_ACCESS_KEY} ${DEMO_INSTANCE_S3_SECRET_KEY} --api S3v4 && |
| 174 | + mc mb ${DEMO_INSTANCE_S3_PROVIDER}/${DEMO_INSTANCE_S3_BUCKET} --ignore-existing --region ${DEMO_INSTANCE_S3_REGION} && |
| 175 | + mc admin info ${DEMO_INSTANCE_S3_PROVIDER}" |
| 176 | +
|
| 177 | +networks: |
| 178 | + testops-net: |
| 179 | + driver: bridge |
| 180 | + ipam: |
| 181 | + config: |
| 182 | + - subnet: 192.168.100.0/24 |
| 183 | + |
| 184 | +volumes: |
| 185 | + rabbitmq-volume: |
| 186 | + minio-volume: |
| 187 | + testops-db-volume: |
0 commit comments