MongoDB containers no Docker são fáceis de replicar e escalar. Se a carga do banco de dados aumentar, você pode iniciar containers MongoDB adicionais para manter o desempenho do banco de dados estável.

O MongoDB pode ser executado em um Docker container?

O MongoDB pode ser executado de forma eficaz em um container Docker. No Docker Hub, existem dois tipos de imagens MongoDB: a Community Edition e a Enterprise Edition. A Community Edition é tipicamente usada para fins não comerciais ou implantações menores, já a Enterprise Edition oferece funcionalidades adicionais e suporte a aplicações maiores e ambientes corporativos com requisitos avançados, como criptografia, auditoria e integração com LDAP. A escolha entre essas versões depende das suas necessidades específicas.

Se as imagens MongoDB disponibilizadas no Docker Hub não atenderem completamente às suas demandas, você pode criar a sua imagem Docker personalizada em um Dockerfile. Nele você pode escolher a versão do MongoDB, definir opções de configuração específicas (como métodos de autenticação) e instalar ferramentas e drivers adicionais, importantes para o seu ambiente específico.

Iniciar container MongoDB no Docker: Passo a passo

O Docker se destaca por sua virtualização leve que promove portabilidade e consistência em diferentes ambientes de desenvolvimento e produção. A seguir, explicamos passo a passo como configurar containers MongoDB no Docker. Para iniciantes, recomendamos começar pelo nosso tutorial Docker. Nele, fornecemos uma introdução detalhada à plataforma de containers.

Passo 1: Baixar imagem Docker para MongoDB

Para criar um container MongoDB no Docker, comece baixando a imagem correspondente no Docker Hub. Abra seu terminal ou linha de comando e execute o seguinte comando:

docker pull mongo:latest
bash

Se a imagem já estiver presente localmente, o Docker não baixará uma nova versão, a não ser que você especifique a versão que deseja usar (por exemplo, mongo:4.4).

Passo 2: Iniciar container MongoDB no Docker

Após baixar a imagem Docker do MongoDB com sucesso, você pode iniciar um container com base nessa imagem:

docker run --name mongodb-container -d -p 27017:27017 mongo:latest
bash
  • docker run: Inicia um novo container Docker
  • --name mongodb-container: Atribui o nome “mongodb-container” ao container
  • -d: Esse parâmetro inicia o container em segundo plano (detached mode), permitindo que o terminal continue utilizável enquanto o container está em execução
  • -p 27017:27017: Abre a porta padrão do MongoDB (27017) no container para o seu sistema host
  • mongo:latest: Instrução para usar a imagem mais recente disponível

Passo 3: Verificar container em execução

Para se certificar que o container foi iniciado com sucesso, execute o seguinte comando:

docker ps
bash

As informações que você receberá são úteis para a obtenção de uma visão geral dos containers MongoDB que estão ativos em seu sistema, a quanto tempo estão em execução e quais portas estão sendo usadas. Se precisar de mais detalhes, como containers parados ou opções de filtro específicas, use o comando docker ps -a.

Passo 4: Estabelecer conexão com MongoDB container no Docker

Agora você pode se conectar à instância MongoDB no seu Docker. Para isso, inicie o MongoDB Shell diretamente no container:

docker exec -it mongodb-container mongo
bash
  • docker exec: Executa um comando no container em execução
  • -it: Permite a interação do terminal com o container
  • mongodb-container: Indica o nome do container MongoDB configurado
  • mongo: Inicia o MongoDB Shell

Após a inicialização, o MongoDB Shell estará disponível para receber comandos. Agora, você pode usar comandos MongoDB habituais para gerenciar ou consultar o seu banco de dados.

Passo 5: Executar operações no MongoDB Shell

Para exibir todas as bases de dados no servidor MongoDB, use o seguinte comando:

show databases
bash

A saída apresentará os nomes das bases de dados:

admin   0.000GB
local      0.000GB
test       0.000GB
bash

Para trabalhar com um banco de dados específico no MongoDB Shell, use o comando:

use mydatabase
bash

Esse comando alterna para o banco de dados “mydatabase”. Se o banco de dados não existir, ele será criado automaticamente assim que um documento for inserido.

Você também pode consultar documentos de uma coleção específica:

db.users.find()
bash

O MongoDB Shell retornará todos os documentos armazenados na coleção “users”.

{ "_id": ObjectId("609823e9f9a5f7f364fc3f90"), "username": "alice", "age": 28 }
{ "_id": ObjectId("609823f2f9a5f7f364fc3f91"), "username": "bob", "age": 32 }
{ "_id": ObjectId("609823f9f9a5f7f364fc3f92"), "username": "charlie", "age": 25 }
bson

Cada documento contém um campo _id exclusivo (identificador específico do MongoDB) e outros campos, como username e age.

Consulte o nosso Digital Guide para obter mais informações sobre ferramentas Docker ou conhecer o MongoDB em detalhes.

Este artigo foi útil?
Ir para o menu principal