0Pricing
DevOps Bootcamp · Aula

Implantação de Aplicações com Vários Serviços

Implante uma aplicação full-stack com banco de dados e serviço de back-end usando o Docker Compose.

Implantação de Aplicações com Vários Serviços é uma aula grátis de DevOps Bootcamp no CoddyKit. Esta é a aula 3 de 4. Você pode ler a aula completa abaixo gratuitamente — depois pratica ao vivo no navegador com um editor de código integrado e um tutor de IA 24/7. Faz parte do caminho de aprendizado de DevOps Bootcamp, e seu progresso é sincronizado entre a web e o app CoddyKit. O curso de DevOps Bootcamp inclui 4 aulas no total.

Implantar aplicações com vários serviços

Boas-vindas! Nesta lição, você aprenderá a colocar uma aplicação completa no ar usando o Docker Compose.

Você verá como definir vários serviços, como uma aplicação web e um banco de dados, e depois implantá-los e gerenciá-los em conjunto.

Implantação de Aplicações com Vários Serviços — ilustração 1

Nosso exemplo: web e banco de dados

Vamos implantar uma aplicação web simples que se conecta a um banco de dados. Essa é uma configuração comum em muitas aplicações do mundo real.

  • Serviço web: uma aplicação Python Flask que exibe uma página web básica.
  • Serviço de banco de dados: um banco de dados PostgreSQL para armazenar dados.

O Docker Compose facilita a orquestração desses dois serviços!

Criando a imagem web

Nosso serviço web precisa da própria imagem Docker. Aqui está um Dockerfile simplificado que cria nossa aplicação Python Flask.

Ele instala o Flask e um conector para PostgreSQL e depois executa o app.py.

FROM python:3.9-slim-buster

WORKDIR /app

COPY . /app

RUN pip install --no-cache-dir flask psycopg2-binary

EXPOSE 5000

CMD ["python", "app.py"]

O `docker-compose.yml`

Este arquivo docker-compose.yml define nossos dois serviços: web e db. Observe como o serviço web é criado a partir do nosso Dockerfile e se conecta ao serviço db usando variáveis de ambiente.

version: '3.8'
services:
  web:
    build: .
    ports:
      - "5000:5000"
    environment:
      DB_HOST: db
      DB_NAME: mydatabase
      DB_USER: user
      DB_PASSWORD: password
    depends_on:
      - db
  db:
    image: postgres:13
    environment:
      POSTGRES_DB: mydatabase
      POSTGRES_USER: user
      POSTGRES_PASSWORD: password
    volumes:
      - db_data:/var/lib/postgresql/data

volumes:
  db_data:

Iniciando seus serviços

Para iniciar todos os serviços definidos no seu arquivo docker-compose.yml, use o comando docker compose up.

A opção -d executa os contêineres no modo "desacoplado", ou seja, em segundo plano.

# This command starts your multi-service app
# and runs it in the background.
docker compose up -d

Verificando os contêineres em execução

Depois de executar docker compose up -d, você deverá verificar se todos os seus serviços estão sendo executados conforme esperado.

O comando docker compose ps lista os serviços, o status deles e as portas.

# Check the status of your services
docker compose ps

Conectando-se à sua aplicação

Com os serviços em execução, você pode acessar sua aplicação web.

  • Abra o navegador.
  • Acesse http://localhost:5000.

Você deverá ver uma mensagem da nossa aplicação Flask confirmando a conexão com o banco de dados PostgreSQL!

Dimensionando os serviços

Um recurso poderoso do Docker Compose é o dimensionamento de serviços. Se sua aplicação web precisar lidar com mais tráfego, você poderá aumentar facilmente o número de instâncias do serviço web.

Use a opção --scale com docker compose up.

# Scale the 'web' service to 3 instances
docker compose up --scale web=3 -d

Parando e removendo serviços

Quando terminar de usar sua aplicação, você poderá parar e remover todos os serviços e as redes definidas no seu arquivo docker-compose.yml.

O comando docker compose down faz essa limpeza por você.

# Stop and remove all services
docker compose down

Verificação rápida

Considere o arquivo docker-compose.yml que usamos. Você acabou de iniciar sua aplicação com docker compose up -d.

Qual é o comando principal para parar e remover todos os serviços em execução e os recursos associados a eles?

Recapitulação e próximos passos

Parabéns! Você aprendeu a implantar e gerenciar uma aplicação com vários serviços usando o Docker Compose.

  • Definimos os serviços em docker-compose.yml.
  • Usamos docker compose up -d para iniciar os serviços.
  • Verificamos o status com docker compose ps.
  • Dimensionamos os serviços e usamos docker compose down para fazer a limpeza.

Essa é uma habilidade fundamental para o desenvolvimento local e os testes de aplicações complexas!

Perguntas Frequentes

A aula “Implantação de Aplicações com Vários Serviços” é grátis?

Sim — o texto completo de “Implantação de Aplicações com Vários Serviços” é grátis para ler aqui na web. Para praticá-la interativamente (um editor de código integrado e um tutor de IA 24/7) e desbloquear o restante do curso de DevOps Bootcamp, atualize para CoddyKit PRO. O curso de DevOps Bootcamp inclui 4 aulas no total.

O que vou aprender em “Implantação de Aplicações com Vários Serviços”?

Implante uma aplicação full-stack com banco de dados e serviço de back-end usando o Docker Compose. Você pratica DevOps Bootcamp com código prático que executa diretamente no navegador, e um tutor de IA 24/7 responde suas dúvidas enquanto trabalha na aula.

Preciso ter experiência prévia para começar DevOps Bootcamp?

Nenhuma experiência prévia é necessária. DevOps Bootcamp no CoddyKit é estruturado para alunos iniciantes até avançados, então você pode começar aqui ou desde o início e aprender no seu ritmo. Esta é a aula 3 de 4.

Quanto tempo leva a aula “Implantação de Aplicações com Vários Serviços”?

A maioria das aulas CoddyKit leva cerca de 5–10 minutos. Cada uma é compacta e interativa, então você faz progresso constante e retoma exatamente de onde parou entre web e app.

Posso escrever e executar código nesta aula de DevOps Bootcamp?

Sim. Cada aula de DevOps Bootcamp inclui um editor de código integrado, então você escreve e executa código real direto no navegador e recebe feedback de IA instantaneamente — nenhuma configuração local necessária.

Todas as aulas deste curso

  1. O que é o Docker Compose?
  2. Escrevendo um Arquivo do Compose
  3. Implantação de Aplicações com Vários Serviços
  4. Variáveis de ambiente e arquivos .env
← Voltar para DevOps Bootcamp