# Slik kjører du MongoDB via en Docker-container

MongoDB-Docker-containere er enkle å replikere og skalere. Hvis belastningen på databasen øker, kan du starte flere MongoDB-containere. Dette sikrer at **databasens ytelse forblir stabil**.

## Kan MongoDB kjøres i en Docker-container?

MongoDB kan kjøre effektivt i en Docker-container. Det finnes to typer MongoDB-bilder på Docker Hub: **Community Edition** og **Enterprise Edition**. Valget mellom disse to versjonene avhenger av dine spesifikke behov. Community Edition er vanligvis ideell for ikke-kommersiell bruk eller mindre oppsett. Enterprise Edition inkluderer derimot ekstra funksjoner og støtte for større applikasjoner eller bedrifter med avanserte behov, som kryptering, revisjon og LDAP-integrasjon.

Hvis de forhåndsbygde MongoDB-bildene på Docker Hub ikke dekker alle dine behov, gir Docker deg muligheten til å lage et **tilpasset Docker-bilde** ved hjelp av en Dockerfile. Med en Dockerfile kan du velge MongoDB-versjon, konfigurere bestemte innstillinger (som autentiseringsmetoder) og installere eventuelle tilleggsverktøy eller drivere som kreves for ditt miljø.

## Trinnvis veiledning i hvordan du bruker MongoDB som en Docker-container

Docker er kjent for sin **lette virtualisering**, som sikrer portabilitet og konsistens på tvers av ulike utviklings- og produksjonsmiljøer. Nedenfor vil vi veilede deg trinn for trinn gjennom hvordan du konfigurerer MongoDB-containere i Docker. For nybegynnere anbefaler vi å ta en titt på vår [Docker-veiledning: Installasjon og første skritt](https://www.ionos.com/nb-no/digitalguide/server/konfigurasjon/docker-veiledning-installasjon-og-foerste-skritt/), som gir en detaljert innføring i containerplattformen.

### Trinn 1: Last ned MongoDB-Docker-bildet

For å opprette en MongoDB-Docker-container må vi først hente det aktuelle bildet fra **Docker Hub**. Åpne terminalen eller kommandolinjen og kjør følgende kommando:

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

Hvis bildet allerede finnes lokalt, vil Docker ikke laste ned en ny versjon med mindre du uttrykkelig angir hvilken versjon du ønsker å bruke (for eksempel `mongo:4.4`).

### Trinn 2: Start MongoDB-Docker-containeren

Når Docker-bildet for MongoDB er lastet ned, kan du starte en container basert på dette bildet:

- `docker run`: Starter en ny Docker-container
- `--name mongodb-container`: Gir containeren navnet «mongodb-container»
- `-d`: Bruk denne parameteren for å starte containeren i bakgrunnen (detached mode). Dette betyr at terminalen fortsatt kan brukes mens containeren kjører
- `-p 27017:27017`: Åpner MongoDBs standardport 27017 for containeren på vertsystemet ditt
- `mongo:latest`: Gir instruksjon om å hente det nyeste tilgjengelige bildet

### Trinn 3: Kontroller at containeren kjører

For å forsikre deg om at containeren er startet opp, skriver du inn følgende kommando:

```bash
docker ps
```

Denne informasjonen gir en rask oversikt over de aktive MongoDB-Docker-containerne på systemet ditt, inkludert hvor lenge de har vært i gang og hvilke porter de bruker. For mer detaljer, for eksempel om stoppede containere eller spesifikke filtreringsalternativer, anbefales det å bruke kommandoen `docker ps -a`.

### Trinn 4: Opprett en tilkobling til MongoDB i Docker-containeren

Nå kan du opprette en forbindelse til MongoDB-instansen i Docker-containeren din. For å gjøre dette starter du **MongoDB Shell** direkte i containeren:

- `docker exec`: Utfører en kommando i den aktive containeren
- `-it`: Tillater interaksjon med terminalen i containeren
- `mongodb-container`: Navnet på den konfigurerte MongoDB-beholderen
- `mongo`: Starter MongoDB-skallet

Når du har kjørt denne kommandoen, bør du se at MongoDB-skallet er klart til å motta kommandoer. Du kan nå skrive inn de vanlige MongoDB-kommandoene for å administrere eller søke i databasen din.

### Trinn 5: Utfør operasjoner i MongoDB-skallet

Du kan nå vise alle eksisterende databaser på MongoDB-serveren på følgende måte:

```bash
show databases
```

Utdataene inneholder navnene på databasene:

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

For å arbeide med en bestemt database i MongoDB-skallet, bruk følgende kommando:

```bash
use mydatabase
```

Bruk følgende kommando for å bytte til databasen med navnet «mydatabase». Hvis databasen ikke finnes, opprettes den automatisk når et dokument legges inn.

Du kan også hente dokumenter fra en bestemt samling:

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

MongoDB-skallet returnerer alle dokumenter som er lagret i samlingen «users».

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

Hvert dokument inneholder et unikt felt `_id` (MongoDB-spesifikk identifikator) og andre felt, som for eksempel `username` og `age`.

Du finner mer informasjon om [Docker-verktøy](https://www.ionos.com/nb-no/digitalguide/server/kunnskap/docker-verktoey-oekosystemet-rundt-containerplattformen/) og en [presentasjon av MongoDB, inkludert en sammenligning med MySQL](https://www.ionos.com/nb-no/digitalguide/nettsteder/webutvikling/mongodb-en-introduksjon-og-sammenligning-med-mysql/), i vår guide.


This is a markdown version of: [https://www.ionos.com/nb-no/digitalguide/server/konfigurasjon/mongodb-docker-container/](https://www.ionos.com/nb-no/digitalguide/server/konfigurasjon/mongodb-docker-container/) for AI/LLM consumption.