Introdução ao Deploy
Source: Dev.to
Introdução
Quando estamos desenvolvendo uma aplicação escrevemos o código em nosso computador. Esse código, depois de escrito, só consegue ser rodado em ambiente local e a aplicação só pode ser acessada pelo seu próprio dispositivo.
Mas como fazer esse código rodar 24 h por dia e ficar acessível para outras pessoas? O deploy é a resposta: é o processo de “pegar” um software e colocá‑lo em um ambiente que o execute continuamente de forma estável, segura e acessível.
Todo sistema em produção precisa de quatro coisas básicas:
- Código (sua aplicação)
- Máquina para executar o código
- Dados (banco de dados, arquivos)
- Rede (internet)
Tipos de servidores
- Servidor físico – Uma máquina real em um datacenter; você cuida de tudo. Geralmente é caro e complexo.
- Servidor virtual – Um servidor virtual dentro de outro servidor, onde você controla o sistema operacional (SO). Exemplos:
- Azure VM
- EC2 (AWS)
- Plataforma como serviço (PaaS) – Você só cuida do código e a nuvem cuida do servidor. Exemplo: Azure App Service.
- Containers – Seu aplicativo é empacotado com tudo que precisa e roda igual em qualquer lugar, gerenciando vários containers, alta escala e complexidade.
Observação: É possível usar seu próprio computador como servidor, mas não é recomendado para ambientes de produção.
Deploy manual
- Desenvolvedor escreve o código.
- Compila o código (build).
- Copia os arquivos para o servidor.
- Configura variáveis de ambiente (ex.: string de conexão, senhas de integrações, etc.).
- Inicia a aplicação.
- Abre porta de rede.
- Aponta um domínio.
- Monitora erros.