Platform Stack Guide
The platform stack provides shared middleware services used by the runtime.
The active Swarm layout runs Redis, RabbitMQ, and both Watchtower services in
one platform stack.
Redis Insight belongs to the independently scalable panel stack. The
retained Compose layout below remains the combined rollback/development form.
Source Of Truth
-
Active Swarm Redis:
swarm/stacks/platform/redis/redis.yml(platform) -
Active Swarm RabbitMQ:
swarm/stacks/platform/rabbitmq/rabbitmq.yml(platform) -
Active Swarm Watchtower:
swarm/stacks/platform/watchtower/{watchtower,watchtower-fast}.yml(platform) -
Active Swarm launcher:
swarm/scripts/platform/platform.{sh,bat} -
Active Redis Insight panel:
swarm/stacks/panels/redis-insight.yml(panel) -
Compose:
runtime/stacks/infrastructure/platform/docker-compose.platform.yml -
VPS env:
runtime/environments/vps/infrastructure/platform/.env -
VPS placeholder:
runtime/environments/vps/infrastructure/platform/platform.env -
Dev template:
runtime/environments/dev/infrastructure/platform/platform.dev.env -
Launcher:
runtime/scripts/infrastructure/platform.{sh,bat}
Services
- Redis
- RabbitMQ
- Redis Insight
Dependencies
- External Docker network:
platform - External Docker network:
proxy
Required Variables
- Redis password and persistence settings
- RabbitMQ username and password
REDIS_INSIGHT_HOSTREDIS_INSIGHT_BIND_IPREDIS_INSIGHT_HOST_PORT
Deploy
docker network create platform || true
docker network create proxy || true
./runtime/scripts/infrastructure/platform.sh upRaw compose command:
docker compose --env-file runtime/environments/vps/infrastructure/platform/.env -f runtime/stacks/infrastructure/platform/docker-compose.platform.yml up -dValidate
./runtime/scripts/infrastructure/platform.sh ps
./runtime/scripts/infrastructure/platform.sh logs
redis-cli -h redis.perspective-v.com -p 6379 -a "<REDIS_PASSWORD>" ping
curl -Ik https://redis-insight.perspective-v.com
curl -Ik https://rmq.perspective-v.comRuntime Rules
- Containers should use internal Redis host
redis. - Containers should use internal RabbitMQ host
rabbitmq. - Redis host-port exposure is for NetBird-connected developer access only.
- Do not store critical source-of-truth data in this Redis instance.