Docker Compose
Hospede a plataforma runtz com Docker Compose.
Docker Compose
Execute toda a stack do runtz — frontend, engine backend e MongoDB — em qualquer máquina com Docker. A stack usa as imagens públicas runtzdev/runtz-engine e runtzdev/runtz-frontend do Docker Hub.
Requisitos
- Docker e Docker Compose.
Instalação
curl -fsSL https://runtz.dev/docker-compose.yml -o docker-compose.yml
docker compose up -dNão é preciso definir secrets: a engine emite e armazena suas próprias sessões, chaves de API e códigos de login.
Abra http://localhost:3000. A saúde do backend fica em http://localhost:8080/health e o MongoDB em localhost:27017.
Se as portas 8080, 3000 ou 27017 já estiverem em uso, altere BACKEND_PORT, FRONTEND_PORT e MONGODB_PORT no .env.
Primeiro acesso
No primeiro acesso, informe Admin username, Password e Workspace Name. Depois, a pessoa administradora pode criar workspaces e gerenciar usuários em Settings.
Variáveis de ambiente
PORT=8080
MONGODB_URI=mongodb://mongodb:27017
MONGODB_DATABASE=runtz
RUNTZ_PUBLIC_URL=http://localhost:3000
CORS_ALLOWED_ORIGINS=http://localhost:3000Todas opcionais — docker compose up -d funciona sem nenhuma delas definida. A tag da imagem usa :rc por padrão — o build mais recente publicado, rc ou estável; defina RUNTZ_VERSION no .env para fixar uma versão específica, por exemplo RUNTZ_VERSION=1.0.0-rc25.
Atualizando
Baixe as imagens mais novas e recrie os containers que mudaram — o MongoDB e os dados continuam intactos:
docker compose pull
docker compose up -dPor padrão isso acompanha a :rc, então já pega o build mais recente publicado sem precisar fazer mais nada. Se o .env fixar um RUNTZ_VERSION específico, atualize o valor lá primeiro — confira o changelog para ver o que mudou — e rode os mesmos dois comandos.
Confirme qual versão está rodando de fato:
curl http://localhost:8080/healthNão existe caminho de downgrade: trate o RUNTZ_VERSION como algo que só anda para frente.
Ativação self-hosted Pro e Enterprise
O Self-hosted Free roda totalmente na sua infraestrutura. Pro e Enterprise são ativados em Settings → Billing dentro do app.
A engine self-hosted não precisa de chaves Stripe. Ela inicia o Checkout pela engine central, redireciona o admin à Stripe, retorna à mesma instalação e ativa a licença automaticamente. O único requisito de rede é acesso HTTPS de saída a https://engine.runtz.dev.
Cada licença ativa uma instalação. Os dados dos scans continuam locais; apenas a sessão do Checkout e o ID da instalação são enviados ao endpoint central para ativação e heartbeat.
A autenticação com Google está disponível em todos os planos self-hosted. GitHub é exclusivo da cloud. Para ativar o Google, configure seu próprio app OAuth e defina GOOGLE_CLIENT_ID na engine.
Compilar a partir do código-fonte
git clone https://github.com/runtz-dev/runtz
cd runtz
cp .env.example .env
docker compose -f docker-compose.yml -f docker-compose.dev.yml up --build