...
The task definitions of our AWS instance
Overview of the respective environment variables
...
Code Block | ||||
---|---|---|---|---|
| ||||
version: '"3.3'" services: # database controlplane-backend-db: image: mysql:8 container_name: controlplane-backend-db restart: always ports: - "3309:3306" environment: - 'MYSQL_ROOT_PASSWORD=: 123' - 'MYSQL_DATABASE=: obsidian-backend' - 'MYSQL_USER=: obsidian' - 'MYSQL_PASSWORD=: 123' volumes: - controlplane-backend-db-vol:/var/lib/mysql # backend controlplane-backend: image: ghcr.io/apiida/controlplane-backend:latest container_name: controlplane-backend depends_on: - controlplane-backend-db ports: - "8080:8080" environment: # The initial admin. You should change the password later. - 'initial-admin.username=: admin' - 'initial-admin.password=admin': admin # The connection to the Developer Portal is created directly at startup. The token can be freely selected but must match the one set in the Developer Portal. dev-portal.default.url: https://localhost:3009 dev-portal.default.token: vpfw2d823h8uQRN # It is important that you provide a secure password here! This is used to encrypt secrets like git passwords in the database! - 'jasypt.encryptor.password=: Dont4get$1' - 'spring.datasource.url=: "jdbc:mysql://controlplane-backend-db:3306/obsidian-backend' " - 'spring.datasource.username=: obsidian' - 'spring.datasource.password=: 123' # required for CORS - 'frontend.url=: https://localhost:3000' # you can also configure smtp while ACP is running, so this is optional - 'mail.smtp.host=: smtp.mailtrap.io' - 'mail.smtp.port=: 25' - 'mail.smtp.encryption=: TLS' - 'mail.smtp.username=: 49c711575e9ab4' - 'mail.smtp.password=: 626cca80501586' # currently, we open a database connection for each incomming request, so the pool size determines how many requests we can process in parallel # you can reduce this, but don't go too small. I would recommend at the very least 20! - 'spring.datasource.hikari.maximum-pool-size=: 50' # ssl configuration - if you disable ssl, the other ssl settings are irrelevant. - 'server.ssl.enabled=: true' - 'server.ssl.key-store-type=: PKCS12' # if you want to change the p12, then mount it into the container and set this to the correct absolute path - 'server.ssl.key-store=: "classpath:certificates/server.p12'" - 'server.ssl.key-store-password=: Dont4get$1' - 'server.ssl.protocol=: TLS' - 'server.ssl.enabled-protocols=: TLSv1.3' volumes: - controlplane-backend-files-vol:/application/files # you probably want to add another volume, for your SSL certificate (.p12 format!) # frontend controlplane-frontend: image: ghcr.io/apiida/controlplane-frontend:latest container_name: controlplane-frontend depends_on: - controlplane-backend ports: - "3000:443" environment: - 'BACKEND_URL=: localhost:8080' - ' # To disable the insertion of the tenant ID the string must not contain 'addTenantIdToBack'. INSERT_TENANT_ID=doNotInsertIt': doNotInsertIt # ssl configuration - here you can mount your certificate in the container and if you want, also change the whole nginx configuration. # volumes: # - ./frontend.crt:/etc/ssl/certs/frontend.crt # - ./frontend.key:/etc/ssl/private/frontend.key # # http://nginx.org/en/docs/ # - ./nginx.conf:/etc/nginx/conf.d/default.conf # devportal controlplane-devportal: image: ghcr.io/apiida/controlplane-devportal:latest container_name: controlplane-devportal depends_on: - controlplane-backend ports: - "3009:443" environment: - 'BACKEND_URL=: localhost:8080' # To disable the insertion of the tenant ID the string must not contain 'addTenantIdToBack'. - 'INSERT_TENANT_ID=doNotInsertIt': doNotInsertIt DEV_PORTAL_TOKEN: vpfw2d823h8uQRN # ssl configuration - here you can mount your certificate in the container and if you want, also change the whole nginx configuration. # volumes: # - ./frontend.crt:/etc/ssl/certs/frontend.crt # - ./frontend.key:/etc/ssl/private/frontend.key # # http://nginx.org/en/docs/ # - ./nginx.conf:/etc/nginx/conf.d/default.conf networks: default: name: controlplane volumes: controlplane-backend-db-vol: controlplane-backend-files-vol: |
Frontend Certificates
To use production SSL certificates you must move your cert components to the following locations:
...
Ensure the following environment variables are set:
Code Block | breakoutMode | wide|
---|---|---|
| ||
- 'initial-admin.username=admin' - 'initial-admin.password=admin' |
...