# Como executar containers MongoDB no Docker

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](https://www.ionos.com/digitalguide/server/know-how/docker-container/ "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](https://www.ionos.com/digitalguide/server/know-how/what-is-docker/ "O que é Docker") personalizada** em um [Dockerfile](https://www.ionos.com/digitalguide/server/know-how/dockerfile/ "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](https://www.ionos.com/pt-br/digitalguide/servidor/configuracao/tutorial-docker/ "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:

```bash
docker pull mongo:latest
```

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:

```bash
docker run --name mongodb-container -d -p 27017:27017 mongo:latest
```

- `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:

```bash
docker ps
```

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:

```bash
docker exec -it mongodb-container mongo
```

- `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:

```bash
show databases
```

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

```bash
admin   0.000GB
local      0.000GB
test       0.000GB
```

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

```bash
use mydatabase
```

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:

```bash
db.users.find()
```

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

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

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](https://www.ionos.com/pt-br/digitalguide/servidor/conhecimento/docker-tools-principais-ferramentas-docker/) ou conhecer o [MongoDB em detalhes](https://www.ionos.com/pt-br/digitalguide/sites-de-internet/desenvolvimento-web/o-que-e-mongodb/).


This is a markdown version of: [https://www.ionos.com/pt-br/digitalguide/servidor/configuracao/containers-mongodb-no-docker/](https://www.ionos.com/pt-br/digitalguide/servidor/configuracao/containers-mongodb-no-docker/) for AI/LLM consumption.