chore: rename cameleer3 to cameleer
Rename Java packages from net.siegeln.cameleer3 to net.siegeln.cameleer, update all references in workflows, Docker configs, docs, and bootstrap. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
33
installer/cameleer/.env.bak
Normal file
33
installer/cameleer/.env.bak
Normal file
@@ -0,0 +1,33 @@
|
||||
# Cameleer SaaS Configuration
|
||||
# Generated by installer v1.0.0 on 2026-04-15 08:55:30 UTC
|
||||
|
||||
VERSION=latest
|
||||
|
||||
PUBLIC_HOST=desktop-fb5vgj9.siegeln.internal
|
||||
PUBLIC_PROTOCOL=https
|
||||
|
||||
HTTP_PORT=80
|
||||
HTTPS_PORT=443
|
||||
LOGTO_CONSOLE_PORT=3002
|
||||
|
||||
# PostgreSQL
|
||||
POSTGRES_USER=cameleer
|
||||
POSTGRES_PASSWORD=dwnyYXj3bVe6kFcOHERr57SkrkD9476a
|
||||
POSTGRES_DB=cameleer_saas
|
||||
|
||||
# ClickHouse
|
||||
CLICKHOUSE_PASSWORD=SshXE61qZqB1kVoZpQLbr2mDYokw1ZgJ
|
||||
|
||||
# Admin user
|
||||
SAAS_ADMIN_USER=admin
|
||||
SAAS_ADMIN_PASS=1J3TrbgIYZbxjav1K14uy5DX8nil6Bdi
|
||||
|
||||
# TLS
|
||||
NODE_TLS_REJECT=0
|
||||
# Docker
|
||||
DOCKER_SOCKET=/var/run/docker.sock
|
||||
DOCKER_GID=0
|
||||
|
||||
# Provisioning images
|
||||
CAMELEER_SAAS_PROVISIONING_SERVERIMAGE=gitea.siegeln.net/cameleer/cameleer-server:latest
|
||||
CAMELEER_SAAS_PROVISIONING_SERVERUIIMAGE=gitea.siegeln.net/cameleer/cameleer-server-ui:latest
|
||||
95
installer/cameleer/INSTALL.md
Normal file
95
installer/cameleer/INSTALL.md
Normal file
@@ -0,0 +1,95 @@
|
||||
# Cameleer SaaS -- Installation Documentation
|
||||
|
||||
## Installation Summary
|
||||
|
||||
| | |
|
||||
|---|---|
|
||||
| **Version** | latest |
|
||||
| **Date** | 2026-04-15 08:55:55 UTC |
|
||||
| **Installer** | v1.0.0 |
|
||||
| **Install Directory** | C:\Users\Hendrik\Documents\projects\cameleer-saas\installer\cameleer |
|
||||
| **Hostname** | desktop-fb5vgj9.siegeln.internal |
|
||||
| **TLS** | Self-signed (auto-generated) |
|
||||
|
||||
## Service URLs
|
||||
|
||||
- **Platform UI:** https://desktop-fb5vgj9.siegeln.internal/platform/
|
||||
- **API Endpoint:** https://desktop-fb5vgj9.siegeln.internal/platform/api/
|
||||
- **Logto Admin Console:** https://desktop-fb5vgj9.siegeln.internal:3002
|
||||
|
||||
## First Steps
|
||||
|
||||
1. Open the Platform UI in your browser
|
||||
2. Log in as admin with the credentials from `credentials.txt`
|
||||
3. Create tenants from the admin console
|
||||
4. The platform will provision a dedicated server instance for each tenant
|
||||
|
||||
## Architecture
|
||||
|
||||
| Container | Purpose |
|
||||
|---|---|
|
||||
| `traefik` | Reverse proxy, TLS termination, routing |
|
||||
| `postgres` | PostgreSQL database (SaaS + Logto + tenant schemas) |
|
||||
| `clickhouse` | Time-series storage (traces, metrics, logs) |
|
||||
| `logto` | OIDC identity provider + bootstrap |
|
||||
| `cameleer-saas` | SaaS platform (Spring Boot + React) |
|
||||
|
||||
Per-tenant `cameleer-server` and `cameleer-server-ui` containers are provisioned dynamically.
|
||||
|
||||
## Networking
|
||||
|
||||
| Port | Service |
|
||||
|---|---|
|
||||
| 80 | HTTP (redirects to HTTPS) |
|
||||
| 443 | HTTPS (main entry point) |
|
||||
| 3002 | Logto Admin Console |
|
||||
|
||||
|
||||
## TLS
|
||||
|
||||
**Mode:** Self-signed (auto-generated)
|
||||
|
||||
The platform generated a self-signed certificate on first boot. To replace it:
|
||||
1. Log in as admin and navigate to **Certificates** in the admin console
|
||||
2. Upload your certificate and key via the UI
|
||||
3. Activate the new certificate (zero-downtime swap)
|
||||
|
||||
## Data & Backups
|
||||
|
||||
| Docker Volume | Contains |
|
||||
|---|---|
|
||||
| `cameleer-pgdata` | PostgreSQL data (tenants, licenses, audit) |
|
||||
| `cameleer-chdata` | ClickHouse data (traces, metrics, logs) |
|
||||
| `cameleer-certs` | TLS certificates |
|
||||
| `cameleer-bootstrapdata` | Logto bootstrap results |
|
||||
|
||||
### Backup Commands
|
||||
|
||||
```bash
|
||||
docker compose -p cameleer-saas exec cameleer-postgres pg_dump -U cameleer cameleer_saas > backup.sql
|
||||
docker compose -p cameleer-saas exec cameleer-clickhouse clickhouse-client --query "SELECT * FROM cameleer.traces FORMAT Native" > traces.native
|
||||
```
|
||||
|
||||
## Upgrading
|
||||
|
||||
```powershell
|
||||
.\install.ps1 -InstallDir C:\Users\Hendrik\Documents\projects\cameleer-saas\installer\cameleer -Version NEW_VERSION
|
||||
```
|
||||
|
||||
## Troubleshooting
|
||||
|
||||
| Issue | Command |
|
||||
|---|---|
|
||||
| Service not starting | `docker compose -p cameleer-saas logs SERVICE_NAME` |
|
||||
| Bootstrap failed | `docker compose -p cameleer-saas logs cameleer-logto` |
|
||||
| Routing issues | `docker compose -p cameleer-saas logs cameleer-traefik` |
|
||||
| Database issues | `docker compose -p cameleer-saas exec cameleer-postgres psql -U cameleer -d cameleer_saas` |
|
||||
|
||||
## Uninstalling
|
||||
|
||||
```powershell
|
||||
Set-Location C:\Users\Hendrik\Documents\projects\cameleer-saas\installer\cameleer
|
||||
docker compose -p cameleer-saas down
|
||||
docker compose -p cameleer-saas down -v
|
||||
Remove-Item -Recurse -Force C:\Users\Hendrik\Documents\projects\cameleer-saas\installer\cameleer
|
||||
```
|
||||
18
installer/cameleer/cameleer.conf
Normal file
18
installer/cameleer/cameleer.conf
Normal file
@@ -0,0 +1,18 @@
|
||||
# Cameleer installation config
|
||||
# Generated by installer v1.0.0 on 2026-04-15 08:55:30 UTC
|
||||
|
||||
install_dir=C:\Users\Hendrik\Documents\projects\cameleer-saas\installer\cameleer
|
||||
public_host=desktop-fb5vgj9.siegeln.internal
|
||||
public_protocol=https
|
||||
admin_user=admin
|
||||
tls_mode=self-signed
|
||||
http_port=80
|
||||
https_port=443
|
||||
logto_console_port=3002
|
||||
logto_console_exposed=true
|
||||
monitoring_network=
|
||||
version=latest
|
||||
compose_project=cameleer-saas
|
||||
docker_socket=/var/run/docker.sock
|
||||
node_tls_reject=0
|
||||
deployment_mode=saas
|
||||
16
installer/cameleer/credentials.txt
Normal file
16
installer/cameleer/credentials.txt
Normal file
@@ -0,0 +1,16 @@
|
||||
===========================================
|
||||
CAMELEER PLATFORM CREDENTIALS
|
||||
Generated: 2026-04-15 08:55:55 UTC
|
||||
|
||||
SECURE THIS FILE AND DELETE AFTER NOTING
|
||||
THESE CREDENTIALS CANNOT BE RECOVERED
|
||||
===========================================
|
||||
|
||||
Admin Console: https://desktop-fb5vgj9.siegeln.internal/platform/
|
||||
Admin User: admin
|
||||
Admin Password: 1J3TrbgIYZbxjav1K14uy5DX8nil6Bdi
|
||||
|
||||
PostgreSQL: cameleer / dwnyYXj3bVe6kFcOHERr57SkrkD9476a
|
||||
ClickHouse: default / SshXE61qZqB1kVoZpQLbr2mDYokw1ZgJ
|
||||
|
||||
Logto Console: https://desktop-fb5vgj9.siegeln.internal:3002
|
||||
@@ -1,6 +1,6 @@
|
||||
# Cameleer SaaS Platform
|
||||
# Generated by Cameleer installer — do not edit manually
|
||||
|
||||
# Generated by Cameleer installer -- do not edit manually
|
||||
|
||||
services:
|
||||
cameleer-traefik:
|
||||
image: ${TRAEFIK_IMAGE:-gitea.siegeln.net/cameleer/cameleer-traefik}:${VERSION:-latest}
|
||||
@@ -20,7 +20,7 @@ services:
|
||||
networks:
|
||||
- cameleer
|
||||
- cameleer-traefik
|
||||
|
||||
|
||||
cameleer-postgres:
|
||||
image: ${POSTGRES_IMAGE:-gitea.siegeln.net/cameleer/cameleer-postgres}:${VERSION:-latest}
|
||||
restart: unless-stopped
|
||||
@@ -37,7 +37,7 @@ services:
|
||||
retries: 5
|
||||
networks:
|
||||
- cameleer
|
||||
|
||||
|
||||
cameleer-clickhouse:
|
||||
image: ${CLICKHOUSE_IMAGE:-gitea.siegeln.net/cameleer/cameleer-clickhouse}:${VERSION:-latest}
|
||||
restart: unless-stopped
|
||||
@@ -52,7 +52,7 @@ services:
|
||||
retries: 3
|
||||
networks:
|
||||
- cameleer
|
||||
|
||||
|
||||
cameleer-logto:
|
||||
image: ${LOGTO_IMAGE:-gitea.siegeln.net/cameleer/cameleer-logto}:${VERSION:-latest}
|
||||
restart: unless-stopped
|
||||
@@ -104,7 +104,7 @@ services:
|
||||
- cameleer-bootstrapdata:/data
|
||||
networks:
|
||||
- cameleer
|
||||
|
||||
|
||||
cameleer-saas:
|
||||
image: ${CAMELEER_IMAGE:-gitea.siegeln.net/cameleer/cameleer-saas}:${VERSION:-latest}
|
||||
restart: unless-stopped
|
||||
@@ -112,14 +112,11 @@ services:
|
||||
cameleer-logto:
|
||||
condition: service_healthy
|
||||
environment:
|
||||
# SaaS database
|
||||
SPRING_DATASOURCE_URL: jdbc:postgresql://cameleer-postgres:5432/cameleer_saas
|
||||
SPRING_DATASOURCE_USERNAME: ${POSTGRES_USER:-cameleer}
|
||||
SPRING_DATASOURCE_PASSWORD: ${POSTGRES_PASSWORD}
|
||||
# Identity (Logto)
|
||||
CAMELEER_SAAS_IDENTITY_LOGTOENDPOINT: http://cameleer-logto:3001
|
||||
CAMELEER_SAAS_IDENTITY_LOGTOPUBLICENDPOINT: ${PUBLIC_PROTOCOL:-https}://${PUBLIC_HOST:-localhost}
|
||||
# Provisioning — passed to per-tenant server containers
|
||||
CAMELEER_SAAS_PROVISIONING_PUBLICHOST: ${PUBLIC_HOST:-localhost}
|
||||
CAMELEER_SAAS_PROVISIONING_PUBLICPROTOCOL: ${PUBLIC_PROTOCOL:-https}
|
||||
CAMELEER_SAAS_PROVISIONING_NETWORKNAME: ${COMPOSE_PROJECT_NAME:-cameleer-saas}_cameleer
|
||||
@@ -127,8 +124,8 @@ services:
|
||||
CAMELEER_SAAS_PROVISIONING_DATASOURCEUSERNAME: ${POSTGRES_USER:-cameleer}
|
||||
CAMELEER_SAAS_PROVISIONING_DATASOURCEPASSWORD: ${POSTGRES_PASSWORD}
|
||||
CAMELEER_SAAS_PROVISIONING_CLICKHOUSEPASSWORD: ${CLICKHOUSE_PASSWORD}
|
||||
CAMELEER_SAAS_PROVISIONING_SERVERIMAGE: ${CAMELEER_SAAS_PROVISIONING_SERVERIMAGE:-gitea.siegeln.net/cameleer/cameleer3-server:latest}
|
||||
CAMELEER_SAAS_PROVISIONING_SERVERUIIMAGE: ${CAMELEER_SAAS_PROVISIONING_SERVERUIIMAGE:-gitea.siegeln.net/cameleer/cameleer3-server-ui:latest}
|
||||
CAMELEER_SAAS_PROVISIONING_SERVERIMAGE: ${CAMELEER_SAAS_PROVISIONING_SERVERIMAGE:-gitea.siegeln.net/cameleer/cameleer-server:latest}
|
||||
CAMELEER_SAAS_PROVISIONING_SERVERUIIMAGE: ${CAMELEER_SAAS_PROVISIONING_SERVERUIIMAGE:-gitea.siegeln.net/cameleer/cameleer-server-ui:latest}
|
||||
labels:
|
||||
- traefik.enable=true
|
||||
- traefik.http.routers.saas.rule=PathPrefix(`/platform`)
|
||||
@@ -142,17 +139,17 @@ services:
|
||||
networks:
|
||||
- cameleer
|
||||
group_add:
|
||||
- "1001"
|
||||
|
||||
- "0"
|
||||
|
||||
volumes:
|
||||
cameleer-pgdata:
|
||||
cameleer-chdata:
|
||||
cameleer-certs:
|
||||
cameleer-bootstrapdata:
|
||||
|
||||
|
||||
networks:
|
||||
cameleer:
|
||||
driver: bridge
|
||||
cameleer-traefik:
|
||||
name: cameleer-traefik
|
||||
driver: bridge
|
||||
driver: bridge
|
||||
@@ -592,7 +592,7 @@ HTTPS_PORT=$($c.HttpsPort)
|
||||
# PostgreSQL
|
||||
POSTGRES_USER=cameleer
|
||||
POSTGRES_PASSWORD=$($c.PostgresPassword)
|
||||
POSTGRES_DB=cameleer3
|
||||
POSTGRES_DB=cameleer
|
||||
|
||||
# ClickHouse
|
||||
CLICKHOUSE_PASSWORD=$($c.ClickhousePassword)
|
||||
@@ -654,8 +654,8 @@ DOCKER_SOCKET=$($c.DockerSocket)
|
||||
DOCKER_GID=$gid
|
||||
|
||||
# Provisioning images
|
||||
CAMELEER_SAAS_PROVISIONING_SERVERIMAGE=${REGISTRY}/cameleer3-server:$($c.Version)
|
||||
CAMELEER_SAAS_PROVISIONING_SERVERUIIMAGE=${REGISTRY}/cameleer3-server-ui:$($c.Version)
|
||||
CAMELEER_SAAS_PROVISIONING_SERVERIMAGE=${REGISTRY}/cameleer-server:$($c.Version)
|
||||
CAMELEER_SAAS_PROVISIONING_SERVERUIIMAGE=${REGISTRY}/cameleer-server-ui:$($c.Version)
|
||||
"@
|
||||
$content += $provisioningBlock
|
||||
}
|
||||
@@ -854,8 +854,8 @@ services:
|
||||
CAMELEER_SAAS_PROVISIONING_DATASOURCEUSERNAME: ${POSTGRES_USER:-cameleer}
|
||||
CAMELEER_SAAS_PROVISIONING_DATASOURCEPASSWORD: ${POSTGRES_PASSWORD}
|
||||
CAMELEER_SAAS_PROVISIONING_CLICKHOUSEPASSWORD: ${CLICKHOUSE_PASSWORD}
|
||||
CAMELEER_SAAS_PROVISIONING_SERVERIMAGE: ${CAMELEER_SAAS_PROVISIONING_SERVERIMAGE:-gitea.siegeln.net/cameleer/cameleer3-server:latest}
|
||||
CAMELEER_SAAS_PROVISIONING_SERVERUIIMAGE: ${CAMELEER_SAAS_PROVISIONING_SERVERUIIMAGE:-gitea.siegeln.net/cameleer/cameleer3-server-ui:latest}
|
||||
CAMELEER_SAAS_PROVISIONING_SERVERIMAGE: ${CAMELEER_SAAS_PROVISIONING_SERVERIMAGE:-gitea.siegeln.net/cameleer/cameleer-server:latest}
|
||||
CAMELEER_SAAS_PROVISIONING_SERVERUIIMAGE: ${CAMELEER_SAAS_PROVISIONING_SERVERUIIMAGE:-gitea.siegeln.net/cameleer/cameleer-server-ui:latest}
|
||||
labels:
|
||||
- traefik.enable=true
|
||||
- traefik.http.routers.saas.rule=PathPrefix(`/platform`)
|
||||
@@ -953,13 +953,13 @@ services:
|
||||
image: postgres:16-alpine
|
||||
restart: unless-stopped
|
||||
environment:
|
||||
POSTGRES_DB: ${POSTGRES_DB:-cameleer3}
|
||||
POSTGRES_DB: ${POSTGRES_DB:-cameleer}
|
||||
POSTGRES_USER: ${POSTGRES_USER:-cameleer}
|
||||
POSTGRES_PASSWORD: ${POSTGRES_PASSWORD}
|
||||
volumes:
|
||||
- cameleer-pgdata:/var/lib/postgresql/data
|
||||
healthcheck:
|
||||
test: ["CMD-SHELL", "pg_isready -U $${POSTGRES_USER:-cameleer} -d $${POSTGRES_DB:-cameleer3}"]
|
||||
test: ["CMD-SHELL", "pg_isready -U $${POSTGRES_USER:-cameleer} -d $${POSTGRES_DB:-cameleer}"]
|
||||
interval: 5s
|
||||
timeout: 5s
|
||||
retries: 5
|
||||
@@ -993,7 +993,7 @@ services:
|
||||
$serverBlock = @"
|
||||
|
||||
cameleer-server:
|
||||
image: `${SERVER_IMAGE:-gitea.siegeln.net/cameleer/cameleer3-server}:`${VERSION:-latest}
|
||||
image: `${SERVER_IMAGE:-gitea.siegeln.net/cameleer/cameleer-server}:`${VERSION:-latest}
|
||||
container_name: cameleer-server
|
||||
restart: unless-stopped
|
||||
depends_on:
|
||||
@@ -1001,7 +1001,7 @@ services:
|
||||
condition: service_healthy
|
||||
environment:
|
||||
CAMELEER_SERVER_TENANT_ID: default
|
||||
SPRING_DATASOURCE_URL: jdbc:postgresql://cameleer-postgres:5432/`${POSTGRES_DB:-cameleer3}?currentSchema=tenant_default
|
||||
SPRING_DATASOURCE_URL: jdbc:postgresql://cameleer-postgres:5432/`${POSTGRES_DB:-cameleer}?currentSchema=tenant_default
|
||||
SPRING_DATASOURCE_USERNAME: `${POSTGRES_USER:-cameleer}
|
||||
SPRING_DATASOURCE_PASSWORD: `${POSTGRES_PASSWORD}
|
||||
CAMELEER_SERVER_CLICKHOUSE_URL: jdbc:clickhouse://cameleer-clickhouse:8123/cameleer
|
||||
@@ -1044,7 +1044,7 @@ services:
|
||||
- cameleer-apps
|
||||
|
||||
cameleer-server-ui:
|
||||
image: `${SERVER_UI_IMAGE:-gitea.siegeln.net/cameleer/cameleer3-server-ui}:`${VERSION:-latest}
|
||||
image: `${SERVER_UI_IMAGE:-gitea.siegeln.net/cameleer/cameleer-server-ui}:`${VERSION:-latest}
|
||||
restart: unless-stopped
|
||||
depends_on:
|
||||
cameleer-server:
|
||||
@@ -1430,7 +1430,7 @@ $logtoConsoleRow
|
||||
| ``logto`` | OIDC identity provider + bootstrap |
|
||||
| ``cameleer-saas`` | SaaS platform (Spring Boot + React) |
|
||||
|
||||
Per-tenant ``cameleer3-server`` and ``cameleer3-server-ui`` containers are provisioned dynamically.
|
||||
Per-tenant ``cameleer-server`` and ``cameleer-server-ui`` containers are provisioned dynamically.
|
||||
|
||||
## Networking
|
||||
|
||||
@@ -1579,7 +1579,7 @@ $tlsSection
|
||||
### Backup Commands
|
||||
|
||||
``````bash
|
||||
docker compose -p $($c.ComposeProject) exec cameleer-postgres pg_dump -U cameleer cameleer3 > backup.sql
|
||||
docker compose -p $($c.ComposeProject) exec cameleer-postgres pg_dump -U cameleer cameleer > backup.sql
|
||||
docker compose -p $($c.ComposeProject) exec cameleer-clickhouse clickhouse-client --query "SELECT * FROM cameleer.traces FORMAT Native" > traces.native
|
||||
``````
|
||||
|
||||
@@ -1596,7 +1596,7 @@ docker compose -p $($c.ComposeProject) exec cameleer-clickhouse clickhouse-clien
|
||||
| Service not starting | ``docker compose -p $($c.ComposeProject) logs SERVICE_NAME`` |
|
||||
| Server issues | ``docker compose -p $($c.ComposeProject) logs server`` |
|
||||
| Routing issues | ``docker compose -p $($c.ComposeProject) logs cameleer-traefik`` |
|
||||
| Database issues | ``docker compose -p $($c.ComposeProject) exec cameleer-postgres psql -U cameleer -d cameleer3`` |
|
||||
| Database issues | ``docker compose -p $($c.ComposeProject) exec cameleer-postgres psql -U cameleer -d cameleer`` |
|
||||
|
||||
## Uninstalling
|
||||
|
||||
|
||||
@@ -588,7 +588,7 @@ HTTPS_PORT=${HTTPS_PORT}
|
||||
# PostgreSQL
|
||||
POSTGRES_USER=cameleer
|
||||
POSTGRES_PASSWORD=${POSTGRES_PASSWORD}
|
||||
POSTGRES_DB=cameleer3
|
||||
POSTGRES_DB=cameleer
|
||||
|
||||
# ClickHouse
|
||||
CLICKHOUSE_PASSWORD=${CLICKHOUSE_PASSWORD}
|
||||
@@ -663,8 +663,8 @@ DOCKER_SOCKET=${DOCKER_SOCKET}
|
||||
DOCKER_GID=$(stat -c '%g' "${DOCKER_SOCKET}" 2>/dev/null || echo "0")
|
||||
|
||||
# Provisioning images
|
||||
CAMELEER_SAAS_PROVISIONING_SERVERIMAGE=${REGISTRY}/cameleer3-server:${VERSION}
|
||||
CAMELEER_SAAS_PROVISIONING_SERVERUIIMAGE=${REGISTRY}/cameleer3-server-ui:${VERSION}
|
||||
CAMELEER_SAAS_PROVISIONING_SERVERIMAGE=${REGISTRY}/cameleer-server:${VERSION}
|
||||
CAMELEER_SAAS_PROVISIONING_SERVERUIIMAGE=${REGISTRY}/cameleer-server-ui:${VERSION}
|
||||
EOF
|
||||
|
||||
log_info "Generated .env"
|
||||
@@ -867,8 +867,8 @@ EOF
|
||||
CAMELEER_SAAS_PROVISIONING_DATASOURCEUSERNAME: ${POSTGRES_USER:-cameleer}
|
||||
CAMELEER_SAAS_PROVISIONING_DATASOURCEPASSWORD: ${POSTGRES_PASSWORD}
|
||||
CAMELEER_SAAS_PROVISIONING_CLICKHOUSEPASSWORD: ${CLICKHOUSE_PASSWORD}
|
||||
CAMELEER_SAAS_PROVISIONING_SERVERIMAGE: ${CAMELEER_SAAS_PROVISIONING_SERVERIMAGE:-gitea.siegeln.net/cameleer/cameleer3-server:latest}
|
||||
CAMELEER_SAAS_PROVISIONING_SERVERUIIMAGE: ${CAMELEER_SAAS_PROVISIONING_SERVERUIIMAGE:-gitea.siegeln.net/cameleer/cameleer3-server-ui:latest}
|
||||
CAMELEER_SAAS_PROVISIONING_SERVERIMAGE: ${CAMELEER_SAAS_PROVISIONING_SERVERIMAGE:-gitea.siegeln.net/cameleer/cameleer-server:latest}
|
||||
CAMELEER_SAAS_PROVISIONING_SERVERUIIMAGE: ${CAMELEER_SAAS_PROVISIONING_SERVERUIIMAGE:-gitea.siegeln.net/cameleer/cameleer-server-ui:latest}
|
||||
labels:
|
||||
- traefik.enable=true
|
||||
- traefik.http.routers.saas.rule=PathPrefix(`/platform`)
|
||||
@@ -977,13 +977,13 @@ COMPOSEEOF
|
||||
image: postgres:16-alpine
|
||||
restart: unless-stopped
|
||||
environment:
|
||||
POSTGRES_DB: ${POSTGRES_DB:-cameleer3}
|
||||
POSTGRES_DB: ${POSTGRES_DB:-cameleer}
|
||||
POSTGRES_USER: ${POSTGRES_USER:-cameleer}
|
||||
POSTGRES_PASSWORD: ${POSTGRES_PASSWORD}
|
||||
volumes:
|
||||
- cameleer-pgdata:/var/lib/postgresql/data
|
||||
healthcheck:
|
||||
test: ["CMD-SHELL", "pg_isready -U $${POSTGRES_USER:-cameleer} -d $${POSTGRES_DB:-cameleer3}"]
|
||||
test: ["CMD-SHELL", "pg_isready -U $${POSTGRES_USER:-cameleer} -d $${POSTGRES_DB:-cameleer}"]
|
||||
interval: 5s
|
||||
timeout: 5s
|
||||
retries: 5
|
||||
@@ -1024,7 +1024,7 @@ COMPOSEEOF
|
||||
cat >> "$f" << COMPOSEEOF
|
||||
|
||||
cameleer-server:
|
||||
image: \${SERVER_IMAGE:-gitea.siegeln.net/cameleer/cameleer3-server}:\${VERSION:-latest}
|
||||
image: \${SERVER_IMAGE:-gitea.siegeln.net/cameleer/cameleer-server}:\${VERSION:-latest}
|
||||
container_name: cameleer-server
|
||||
restart: unless-stopped
|
||||
depends_on:
|
||||
@@ -1032,7 +1032,7 @@ COMPOSEEOF
|
||||
condition: service_healthy
|
||||
environment:
|
||||
CAMELEER_SERVER_TENANT_ID: default
|
||||
SPRING_DATASOURCE_URL: jdbc:postgresql://cameleer-postgres:5432/\${POSTGRES_DB:-cameleer3}?currentSchema=tenant_default
|
||||
SPRING_DATASOURCE_URL: jdbc:postgresql://cameleer-postgres:5432/\${POSTGRES_DB:-cameleer}?currentSchema=tenant_default
|
||||
SPRING_DATASOURCE_USERNAME: \${POSTGRES_USER:-cameleer}
|
||||
SPRING_DATASOURCE_PASSWORD: \${POSTGRES_PASSWORD}
|
||||
CAMELEER_SERVER_CLICKHOUSE_URL: jdbc:clickhouse://cameleer-clickhouse:8123/cameleer
|
||||
@@ -1075,7 +1075,7 @@ COMPOSEEOF
|
||||
- cameleer-apps
|
||||
|
||||
cameleer-server-ui:
|
||||
image: \${SERVER_UI_IMAGE:-gitea.siegeln.net/cameleer/cameleer3-server-ui}:\${VERSION:-latest}
|
||||
image: \${SERVER_UI_IMAGE:-gitea.siegeln.net/cameleer/cameleer-server-ui}:\${VERSION:-latest}
|
||||
restart: unless-stopped
|
||||
depends_on:
|
||||
cameleer-server:
|
||||
@@ -1372,7 +1372,7 @@ EOF
|
||||
| `logto` | OIDC identity provider + bootstrap |
|
||||
| `cameleer-saas` | SaaS platform (Spring Boot + React) |
|
||||
|
||||
Per-tenant `cameleer3-server` and `cameleer3-server-ui` containers are provisioned dynamically when tenants are created.
|
||||
Per-tenant `cameleer-server` and `cameleer-server-ui` containers are provisioned dynamically when tenants are created.
|
||||
|
||||
## Networking
|
||||
|
||||
@@ -1561,7 +1561,7 @@ EOF
|
||||
|
||||
\`\`\`bash
|
||||
# PostgreSQL
|
||||
docker compose -p ${COMPOSE_PROJECT} exec cameleer-postgres pg_dump -U cameleer cameleer3 > backup.sql
|
||||
docker compose -p ${COMPOSE_PROJECT} exec cameleer-postgres pg_dump -U cameleer cameleer > backup.sql
|
||||
|
||||
# ClickHouse
|
||||
docker compose -p ${COMPOSE_PROJECT} exec cameleer-clickhouse clickhouse-client --query "SELECT * FROM cameleer.traces FORMAT Native" > traces.native
|
||||
@@ -1584,7 +1584,7 @@ The installer preserves your \`.env\`, credentials, and data volumes. Only the c
|
||||
| Service not starting | \`docker compose -p ${COMPOSE_PROJECT} logs SERVICE_NAME\` |
|
||||
| Server issues | \`docker compose -p ${COMPOSE_PROJECT} logs server\` |
|
||||
| Routing issues | \`docker compose -p ${COMPOSE_PROJECT} logs cameleer-traefik\` |
|
||||
| Database issues | \`docker compose -p ${COMPOSE_PROJECT} exec cameleer-postgres psql -U cameleer -d cameleer3\` |
|
||||
| Database issues | \`docker compose -p ${COMPOSE_PROJECT} exec cameleer-postgres psql -U cameleer -d cameleer\` |
|
||||
|
||||
## Uninstalling
|
||||
|
||||
|
||||
Reference in New Issue
Block a user