Conceitos
Equipe, servidor, aplicação, processos, add-ons e ambientes — e como tudo se encaixa.
Um mapa rápido dos termos que você vai encontrar no painel e nesta documentação.
Equipe
Tudo pertence a uma equipe: seus servidores, aplicações, bancos de dados, credenciais de nuvem e histórico. Cada membro tem um papel (leitor, deployer, admin, proprietário). Veja Equipes, SSO e acesso.
Servidor
Um servidor é uma máquina onde suas aplicações rodam. O Railyard pode criar um na sua própria conta DigitalOcean, Vultr, Hetzner, AWS ou OVH, ou você pode conectar qualquer máquina Ubuntu via SSH. De qualquer forma, o servidor é seu e o Railyard instala o Docker, um proxy de roteamento e um agente leve que recebe instruções do control plane e roda seus containers. O servidor é seu e seu provedor cobra diretamente de você. Veja Adicione um servidor.
Um servidor também pode ser dedicado a uma única função: um servidor de build para builds pesados, ou um servidor de banco de dados que só guarda dados. Veja Servidores de banco de dados.
Aplicação
Uma aplicação é uma unidade que pode ser implantada: um repositório, uma imagem Docker, um site estático ou uma function. Cole a URL de um repositório ou escolha uma imagem, e o Railyard lê o conteúdo para preencher o framework, a porta, os processos e as variáveis. Veja Fazer deploy a partir de um repositório e Fazer deploy de uma imagem Docker.
Processos
Uma aplicação pode rodar vários processos a partir da mesma imagem:
- web — responde ao tráfego HTTP, na porta em que sua aplicação escuta.
- workers — executam jobs em segundo plano (Sidekiq, Solid Queue, Celery…), escalados de forma independente do web.
- comando de release — roda uma vez antes de a nova versão receber tráfego, normalmente para migrations.
- cron — um comando executado em um horário programado, com histórico de execuções.
Veja Workers e jobs agendados.
Add-ons e bancos de dados
Postgres, MySQL, Redis, MongoDB, ClickHouse, Elasticsearch e outros podem ser provisionados em um servidor, com as credenciais injetadas na aplicação automaticamente. Veja Bancos de dados e backups.
Ambientes
Um projeto agrupa aplicações relacionadas. Um ambiente (produção, staging…) é uma cópia completa de um projeto, criada a partir do Canvas. Um preview de pull request é uma cópia temporária de uma aplicação para um PR aberto, removida quando o PR é fechado. Veja Ambientes e previews.
Deploys e releases
Um deploy builda (ou baixa) uma imagem, executa o comando de release e então troca o tráfego para a nova versão assim que ela estiver saudável. Todo deploy bem-sucedido se torna uma release para a qual você pode fazer rollback. Veja Deploys e rollbacks.
Domínios
Toda aplicação já nasce com uma URL funcionando; adicione seu próprio domínio com verificação de propriedade e certificado automático. Veja Domínios e HTTPS.