O que vem instalado no servidor Dokku?
- Dokku v0.38.34 a partir do script de bootstrap oficial, com licença MIT
- Docker para os contentores das aplicações e Nginx para o encaminhamento
- Plugin dokku-letsencrypt para certificados HTTPS gratuitos em cada aplicação
- Um domínio global sslip.io, para que as aplicações abram em appname.IP-with-dashes.sslip.io
- A chave SSH da sua encomenda, se indicou uma, já adicionada ao Dokku
- 2 GB de swap e uma firewall com as portas 22, 80 e 443 abertas
Que tamanho é necessário para o Dokku?
O Dokku exige oficialmente 1 GB de memória e sugere swap se tiver menos. Esta instalação acrescenta 2 GB de swap. Nos nossos testes com um servidor real, com 1 GB e 1 núcleo, um pequeno exemplo em Next.js foi construído e ficou no ar com git push em cerca de 7 minutos. As compilações correm no servidor, por isso os projetos Node.js enchem a memória depressa e, como regra prática, deve ponderar 2 a 4 GB para projetos pesados de compilação. Cada aplicação e cada base de dados é o seu próprio contentor, por isso some o que usam. Se não chegar, aumente a RAM, o CPU e o disco em separado a partir do painel.
| Utilização | Tamanho | Preço | Escolher |
|---|---|---|---|
| Site novo | 1 GB RAM · 1 vCore · 25 GB NVMe | $2.58/mês | |
| Site em crescimento | 2 GB RAM · 1 vCore · 40 GB NVMe | $4.01/mês | |
| Site com muito movimento | 4 GB RAM · 2 vCore · 60 GB NVMe | $6.89/mês |
Para quem é?
- Programadores que preferem a linha de comandos e não precisam de um painel web
- Projetos paralelos, APIs e bots que devem funcionar por um preço mensal fixo
- Quem quer implementação com git push, com buildpacks ou um Dockerfile, num servidor pequeno
- Quem se sente à vontade com SSH e gosta de ter tudo nas suas mãos
O que acontece depois de encomendar?
- Defina o tamanho e conclua o pagamento. O servidor arranca e o Dokku instala-se sozinho. Nos nossos testes com servidores reais, demorou cerca de 10 minutos.
- No painel, abra o servidor em Os meus servidores e copie o endereço IP da linha Endereço de ligação, no separador Resumo.
- Se não indicou uma chave SSH na encomenda, ligue-se por SSH e execute: echo 'ssh-ed25519 AAAA...' | dokku ssh-keys:add mine
- No servidor, crie a aplicação: dokku apps:create myapp
- Na pasta do seu projeto, execute: git remote add dokku dokku@IP:myapp, e depois git push dokku main
- Para HTTPS, execute no servidor: dokku letsencrypt:set myapp email [email protected], e depois dokku letsencrypt:enable myapp
Em todos os servidores
- Cópias de segurança diárias incluídas no preço
- Tráfego ilimitado
- Acesso root completo
- Aumentar ou reduzir a RAM e o CPU mais tarde, e fazer crescer o disco
- Localização: Istanbul · IST-1.
Bom saber
- O Dokku usa-se com comandos e não tem interface web. Se preferir trabalhar num navegador, veja o servidor com o Dokploy instalado.
- A tarefa de renovação do certificado fica ativa durante a configuração (dokku letsencrypt:cron-job --add). Se a remover, os certificados deixam de se renovar sozinhos.
- Nenhum plugin de base de dados está instalado. Para o PostgreSQL, execute primeiro dokku plugin:install https://github.com/dokku/dokku-postgres.git
- Se uma compilação ficar sem memória num tamanho pequeno, aumente o servidor a partir do painel.
- Atualizar o Dokku, os seus plugins e as suas aplicações é responsabilidade sua.
Dokku: perguntas e respostas
De quanta RAM precisa o Dokku?
O Dokku exige oficialmente 1 GB de memória, o que chega para uma aplicação pequena. As compilações correm no servidor, por isso, como regra prática, pondere 2 a 4 GB para projetos Node.js ou Next.js. Mais tarde pode aumentar a partir do painel.
Como publico uma aplicação com o Dokku?
Crie a aplicação no servidor com dokku apps:create, adicione o servidor ao projeto com git remote add dokku dokku@IP:myapp e depois execute git push dokku main. O Dokku constrói e arranca a aplicação e, quando a implementação termina, mostra o respetivo endereço.
Que tipos de projetos o Dokku consegue compilar?
O Dokku deteta o projeto sozinho e compila-o com buildpacks ou com o seu próprio Dockerfile. Se não quiser a deteção automática, defina o construtor por aplicação com o comando builder:set.
Como ligo o meu próprio domínio ao Dokku?
Aponte o registo A do domínio para o IP do servidor e depois execute dokku domains:set myapp example.com no servidor. A seguir, execute dokku letsencrypt:enable myapp para obter um certificado para o novo endereço.
Como acrescento uma base de dados ao Dokku?
O Dokku obtém as bases de dados a partir de plugins. Instale o plugin oficial do PostgreSQL, execute dokku postgres:create mydb para criar uma e dokku postgres:link mydb myapp para a ligar. A aplicação recebe o endereço como DATABASE_URL.
O Dokku tem painel web?
Não. O Dokku é gerido por SSH com comandos, e o acesso root é seu. Se quiser publicar a partir de um navegador, escolha o servidor com o Dokploy instalado.