Tomáš Dvořák c0733dc30c Merge pull request #3 from Dvorinka/fix/better-auth-cve
fix: security sweep - better-auth 1.6.33, node 22, go 1.26
2026-09-21 14:42:32 +02:00
2026-04-10 12:02:36 +02:00
2026-04-10 12:02:36 +02:00
2026-04-10 12:02:36 +02:00
2026-04-10 12:02:36 +02:00
2026-04-10 12:02:36 +02:00

Containr

Containr

Self-hosted platform for deploying and managing containerized services. Railway-style project canvases on your own hardware.

Quick Start • Features • Architecture • Guides • Contributing

CI License: MIT

What is Containr?

Containr is an open-source control plane for Docker. It gives you a project-first deployment workflow — create a project, drop services onto a visual canvas, wire them together with environment variables, and deploy — without Kubernetes, without a cloud bill, and without giving up control of your infrastructure.

The UI is inspired by Railway's project canvas: services appear as nodes, connections are inferred automatically, and everything — logs, metrics, deployments, builds — is one click away.

Features

  • Project canvas — visual service topology with groups, drag/drop layout, and auto-inferred connections
  • Deployments — Docker-based deploys with history, logs, and rollback
  • Git integration — deploy from GitHub, GitLab, Bitbucket, or Gitea; repository and branch pickers, webhooks, GitHub App support
  • Builds — build pipeline with live status over WebSocket
  • Service metrics — real CPU/memory/network telemetry from Docker stats
  • Templates — one-click service catalog (databases, apps, tooling)
  • Databases — managed database services with backup/restore actions
  • Cron jobs — scheduled jobs with execution history
  • Preview environments — per-project preview deploys
  • Variables & environments — per-service env vars, production/preview/dev
  • Node monitoring — host CPU, memory, disk, and network telemetry
  • Security — audit logs, vulnerability scans, compliance reports
  • Auth — Better Auth sessions (email + OAuth), per-user resource scoping
  • Self-hosted networking — Traefik reverse proxy, optional Cloudflare Tunnel for exposure without port forwarding

Architecture

app/frontend/   React 19 + Vite + TypeScript + Tailwind + React Flow
app/backend/    Go API (Gin) · PostgreSQL · Redis · Docker SDK · Better Auth sidecar
infra/          Self-hosted compose: Traefik + Cloudflare Tunnel
docs/           Guides, OpenAPI spec, design documents
Component Default port
Frontend 3000 (prod) / 5173 (dev)
API 8082
Auth sidecar 3001
PostgreSQL 5432
Redis 6379

Quick Start

Requires Docker with the Compose plugin, openssl, and curl.

git clone https://github.com/Dvorinka/Containr.git
cd Containr
./install.sh

The script creates .env from .env.example, fills in all required secrets with random values, builds the images, and starts the stack. It keeps an existing .env untouched, so it is safe to re-run.

Frontend at http://localhost:3000, API at http://localhost:8082.

Docker Compose (manual)

cp .env.example .env   # fill in secrets
docker compose up -d --build

Host ports can be remapped in .env (HTTP_PORT, API_PORT, POSTGRES_PORT, REDIS_PORT) if the defaults collide with other services.

Local development

docker compose up -d postgres redis   # data services only
cd app/backend && go run ./cmd/server # API + embedded auth sidecar
cd app/frontend && npm install && npm run dev

Frontend dev server at http://localhost:5173.

Self-hosted with Traefik + Cloudflare Tunnel

See infra/docker-compose.yml and docs/guides/CLOUDFLARE_SETUP.md.

Configuration

All configuration is via environment variables — see .env.example. Required for production: JWT_SECRET, BETTER_AUTH_SECRET, BETTER_AUTH_INTERNAL_TOKEN, database and Redis credentials.

Never commit .env or .env.prod. Both are gitignored; if a secret was ever committed, rotate it.

Documentation

Contributing

See CONTRIBUTING.md. Issues and PRs welcome.

Security

See SECURITY.md. Report vulnerabilities privately — do not open public issues.

License

MIT © 2026 Tomas Dvorak

S
Description
No description provided
Readme MIT
44 MiB
0 Stars 1 Watchers 0 Forks
Languages
Go 46.4%
TypeScript 44.2%
PLpgSQL 4.2%
CSS 1.9%
Shell 1.7%
Other 1.4%