Environments
Claritools supports three operating modes, each tailored to a different use case. The mode is controlled by the CLARITOOLS_ENVIRONMENT variable in your .env file, set during task init.
How environments work
Each environment determines:
- Which Docker Compose files are used to start services
- Which configuration directory is mounted (
config/local/,config/dev/, orconfig/cd/) - Which URL pattern services are accessible at
- How TLS is handled (self-signed or Let's Encrypt)
Compose file layering
| Environment | Compose files |
|---|---|
| local | docker-compose.yml + docker-compose.local.yml |
| dev | docker-compose.yml + docker-compose.local.yml + docker-compose.dev.yml |
| cd | docker-compose.yml |
The base docker-compose.yml defines the core services shared by all environments. Additional compose files layer on environment-specific services.
URL routing
Services are assigned HTTPS URLs based on a domain variable called CLARITOOLS_DOMAIN, which is derived automatically from the environment:
| Environment | CLARITOOLS_DOMAIN |
URL pattern |
|---|---|---|
| local | local |
*.local.ciservers.net |
| dev | local |
*.local.ciservers.net |
| cd | cd |
*.cd.ciservers.net |
Local and dev share the same URL pattern because dev mode is used to develop claritools features locally before they are deployed to the cd production environment.
Configuration directories
Each environment has its own configuration under config/<environment>/:
config/
local/ # Local mode configs
traefik.yml
certificates.yml
prometheus.yml
homepage/
dev/ # Dev mode configs
traefik.yml
certificates.yml
prometheus.yml
keycloak/
homepage/
cd/ # CD (production) mode configs
traefik.yml
certificates.yml
prometheus.yml
homepage/
Comparison
| Feature | Local | Dev | CD |
|---|---|---|---|
| Purpose | App development | Claritools development | Production |
| Network | Local machine | Local machine | Public internet |
| TLS | Self-signed | Self-signed | Let's Encrypt |
| Authentication | None | Keycloak OIDC | None (planned) |
| Portainer | Yes | Yes | No |
| IT Tools | Yes | Yes | No |
| Keycloak | No | Yes | No |
| Dashboard title | Claritools - Local | Claritools - Dev | Claritools - CD |