• Categorias
    • Central do RH
      • Recrutamento e Seleção
      • RH Tech
      • Negócios e Cultura
      • Retenção de Talentos
      • Histórias de Sucesso
      • Geekhunter
    • Mundo TI
      • Desenvolvimiento de software
      • Machine Learning & AI
      • Carreira de programador e dicas
      • Histórias de sucesso
  • Materiais Gratuitos
    • Conteúdo RH e Recrutamento
      • Webinars e Eventos
      • Materiais Gratuitos [HR]
      • Cursos GeekAcademy
    • Para desenvolvedores
      • Calculadora CLT x PJ
      • Quiz de Front-end
      • Quiz de Mobile
      • Guia Full Stack atualizado
      • Guia de Negociação Salarial para Devs
      • Modelo de Currículo Internacional
  • Login
    • Empresas
    • Para Talentos
      • Criar perfil gratis
      • Ver vagas
  • Categorias
    • Central do RH
      • Recrutamento e Seleção
      • RH Tech
      • Negócios e Cultura
      • Retenção de Talentos
      • Histórias de Sucesso
      • Geekhunter
    • Mundo TI
      • Desenvolvimiento de software
      • Machine Learning & AI
      • Carreira de programador e dicas
      • Histórias de sucesso
  • Materiais Gratuitos
    • Conteúdo RH e Recrutamento
      • Webinars e Eventos
      • Materiais Gratuitos [HR]
      • Cursos GeekAcademy
    • Para desenvolvedores
      • Calculadora CLT x PJ
      • Quiz de Front-end
      • Quiz de Mobile
      • Guia Full Stack atualizado
      • Guia de Negociação Salarial para Devs
      • Modelo de Currículo Internacional
  • Login
    • Empresas
    • Para Talentos
      • Criar perfil gratis
      • Ver vagas

Início O que é deploy e como enviar um Web App ou site para produção

  • Foto de Geekhunter Geekhunter
  • novembro 13, 2020
o-que-e-deploy

O que é deploy e como enviar um Web App ou site para produção

Quando terminamos uma aplicação, em que lugar podemos disponibilizar para outras pessoas acessarem? O que preciso para fazer para o web app funcionar? Hoje vou falar sobre o que é deploy e dar um exemplo de como fazê-lo corretamente.

Em primeiro lugar, podemos considerar deploy como uma fase do ciclo de vida de um software.

Basicamente, usamos este termo quando vamos disponibilizar o sistema em um ambiente de desenvolvimento, para testes ou em produção.

O termo deploy pode ser usado para muitos casos, dependendo muito do ambiente e da tecnologia. Um desenvolvedor pode fazer o Deploy da sua aplicação web no Tomcat localmente, ou em serviços como a AWS. 

Automação de Deploy

O Deploy da sua aplicação pode ser feito de forma manual, parcialmente ou completamente automatizado.

Um processo automatizado pode consistir em realizar commit do código em um repositório e esta ação dispara automaticamente o processo de construção (build) do executável da aplicação e a sua disponibilização no servidor.

Nesse sentido, quando falamos da automatização do Deploy, não significa que a aplicação precise estar 100% automatizada. No caso, não necessariamente um commit vai acabar em produção, o que importa é que todos os passos trabalhosos estejam automatizados.

Desenvolvedores e administradores DevOps, por exemplo, devem configurar este ambiente de forma mais adequada a cada projeto, diminuindo o retrabalho.

Um bom exemplo é quando nem todo commit de código faz sentido gerar uma versão para produção. Então vários critérios podem ser adotados, a principal estratégia é o uso de branches para diferentes ramificações no desenvolvimento.

Integração Contínua – CI – Continuous Integration

Da mesma forma, essa automatização não visa apenas evitar retrabalho mas também permite aos desenvolvedores alcançarem um nível superior de produtividade e entrega de qualidade.

Para quem é desenvolvedor, encontrar uma aplicação que os responsáveis disseram: “Já está pronta, só falta testar”, e depois descobrir que muita coisa precisava ser corrigida é uma situação comum.

Postergar o teste do código é uma situação recorrente. Pois sem testes e deploy automatizados, o desenvolvedor escreve muito código antes de colocar o programa para executar, isto acaba levando a um retrabalho desnecessário.

Como o deploy funciona

Quando falamos de Deploy de uma aplicação, geralmente existem duas opções: VPS ou PaaS (Platform as a Service). Este artigo irá te mostrar como fazer deploy da sua aplicação para produção em um serviço PaaS como o Heroku.

Passo 1 – Crie seu projeto

Primeiramente, devemos criar uma estrutura simples com alguns arquivos básicos. Para este artigo eu irei criar uma aplicação NodeJS.

Em uma nova pasta você pode abrir o seu terminal e rodar o comando npm init -y para criar um novo projeto. O servidor será feito com o Express, precisamos rodar o comando npm install express para instalar o módulo.

Uma vez instalado, escolha seu editor de texto preferido e abra o projeto para criar um novo arquivo chamado app.js. Então iremos deixar ele da seguinte forma:

const app = require('express')();
const PORT = process.env.PORT || 3000;

app.get('', (req, res) => {
    res.send(“Hello World”);
});

app.listen(PORT, () => {
    console.log(`Este app está escutando na port ${PORT}`);
});

Nós podemos iniciar a aplicação localmente executando o comando node app.js no terminal. Depois disso abra seu navegador na URL http://localhost:3000/. Você poderá ver a mensagem que você programou anteriormente “Hello World” no seu browser.

Passo 2 – Sistema de controle de versão 

A próxima etapa é escolher um sistema de controle de versão e colocar nosso código em uma plataforma de desenvolvimento em um repositório.

O sistema de controle de versão mais popular é o Git junto com o Github como plataforma de desenvolvimento, então é isso que usaremos neste tutorial para deploy.

Vá até o GitHub e crie um novo repositório para seu aplicativo, como este:

Para carregar seu código local em um repositório, você precisa executar os comandos listados no Github após clicar no botão Criar repositório:

Antes de fazermos isso, devemos ignorar alguns arquivos. Queremos enviar para o repositório apenas o código que escrevemos, sem as dependências (os módulos do node instalados).

Para isso, precisamos criar um novo arquivo chamado .gitignore e dentro dele escrever o arquivo que queremos ignorar na hora de mandar o código.

Agora podemos executar os comandos do GitHub da imagem anterior.

Se você executou os comandos corretamente, você terá um novo repositório com seu projeto. Se você atualizá-lo, deverá ver seus arquivos, exceto aquele que você ignorou no passo anterior, ou seja, node_modules.

Passo 3 – Linkar o repositório com o Heroku

Aqui nós iremos linkar nosso repositório do GitHub para nosso Aplicação no Heroku.

Primeiramente crie uma aplicação no Heroku e siga os passos da plataforma:

linkar-repositorio-heroku
criar-novo-app-heroku

Agora, se você olhar a navegação na parte superior, verá Overview, Resources, Deploy, Metrics e assim por diante. Certifique-se de que Deploy está selecionado. Em seguida,, clique no ícone GitHub e procure pelo repositório que você mandou seu código.

app-heroku-deploy

Assim que o aplicativo no GitHub for conectado com sucesso à sua conta Heroku, você pode clicar em Deploy Branch para fazer Deploy do seu aplicativo.

Se desejar, você também pode selecionar a opção Enable Automatic Deploys, isso fará com que toda vez que você realizar um push para o repositório GitHub atualizará no Heroku também.

enable-automatic-deploys

Passo 4 – Configure o Heroku para executar o aplicativo corretamente

Se você abriu sua a aplicação, você deve ter visto uma tela como esta:

configure-heroku

Isso acontece porque o Heroku não sabe como iniciar a aplicação.

Em alguns passos anteriores executamos o comando node app.js para iniciar a aplicação localmente. A app Heroku não tem como saber que é necessário executar este comando para iniciar a aplicação e por isso acontece o erro 

Para resolver este problema, devemos criar um novo arquivo denominado Procfile com o seguinte conteúdo: web: node ./app.js.

Dessa forma, para atualizar nosso aplicativo, tudo o que precisamos fazer é enviar um novo commit ao GitHub. Se habilitarmos a opção Automatic Deploys, o código fará automaticamente um novo push para o Heroku. Caso contrário, precisamos clicar em Deploy Branch novamente.

Concluindo o processo de deploy

O Heroku, assim como outros serviços similares, permite que os desenvolvedores façam Deploy de forma rápida e quase sem trabalho de um aplicativo em um servidor web. 

Ele também fornece plugins que você pode integrar na sua aplicação para facilitar a sua  entrega do produto.

Por fim, este tipo de solução PaaS sempre vai nos permitir ter menos trabalho do que configurar uma VPS onde teriamos que realizar a configuração de um ambiente completo para o mesmo acontecer.

E você, já conhecia o processo de deploy de uma aplicação? Deixa um comentário falando sobre como você executa essa função no seu projeto!

 

Foto de Geekhunter

Geekhunter

Python IDE
10 melhores IDEs e editores de código em Python para 2025
  • março 18, 2025
o que é commit
O que é Commit e como usar Commits Semânticos
  • dezembro 13, 2024
certificações em TI
10 certificações em TI muito valorizadas hoje
  • novembro 20, 2024
Consultor SAP: o que faz, salário e como se tornar um
  • março 20, 2025
o que é ATS
O que é ATS? Entenda como um Applicant Tracking System transforma o recrutamento
  • julho 3, 2026
Contabilidade para DEVs
Contabilidade para DEVs: tudo o que você precisa saber antes de abrir um CNPJ
  • julho 3, 2026
Finops
FinOps na prática: como reduzir custos de Cloud sem perder performance
  • junho 26, 2026
descrição de vagas
Guia completo de descrição de vagas: como atrair os candidatos certos em 2026
  • junho 26, 2026

Gosta do conteúdo? Assine nossa Newsletter!

Recrutamento e Seleção

O que é ATS? Entenda como um Applicant Tracking System transforma o recrutamento

  • Geekhunter
  • julho 3, 2026
Carreira de programador e dicas

Contabilidade para DEVs: tudo o que você precisa saber antes de abrir um CNPJ

  • Geekhunter
  • julho 3, 2026
Carreira de programador e dicas

FinOps na prática: como reduzir custos de Cloud sem perder performance

  • Geekhunter
  • junho 26, 2026
Recrutamento e Seleção

Guia completo de descrição de vagas: como atrair os candidatos certos em 2026

  • Geekhunter
  • junho 26, 2026
Negócios e Cultura

Burnout nas empresas: 5 causas que estão esgotando talentos e como prevenir o problema

  • Geekhunter
  • junho 19, 2026
AnteriorAnteriorIntrodução ao Flutter, o framework da Google
PróximoA importância da Governança de DadosPróximo

Rod. José Carlos Daux – SC
401, 4120 – km 4, Bairro Saco
Grande – Florianópolis – SC
CEP 88032-005

Para Profissionais
  • Criar Perfil
  • Vagas de tecnologia
  • Blog TI
  • Criar Perfil
  • Vagas de tecnologia
  • Blog TI
Para Empresas
  • Plataforma de Recrutamento Tech
  • Serviço de Recrutamento Tech
  • Nossos Planos
  • GeekAcademy
  • Blog Geekhunter
  • Perguntas Frequentes
  • Login Empresas
  • Plataforma de Recrutamento Tech
  • Serviço de Recrutamento Tech
  • Nossos Planos
  • GeekAcademy
  • Blog Geekhunter
  • Perguntas Frequentes
  • Login Empresas
A Geekhunter
  • Sobre a GeekHunter
  • Suporte
  • Políticas de Privacidade
  • Termos de Uso
  • Sobre a GeekHunter
  • Suporte
  • Políticas de Privacidade
  • Termos de Uso

Add Your Heading Text Here