# Sådan kører du MongoDB via en Docker-container

MongoDB-Docker-containere er nemme at replikere og skalere. Hvis belastningen på databasen stiger, kan du starte yderligere MongoDB-containere. Dette sikrer, at **databasens ydeevne** forbliver **stabil**.

## Kører MongoDB i en Docker-container?

MongoDB kan køre effektivt i en Docker-container. Der findes to typer MongoDB-images på Docker Hub: **Community Edition** og **Enterprise Edition**. Valget mellem disse to versioner afhænger af dine specifikke behov. Community Edition er som regel ideel til ikke-kommerciel brug eller mindre installationer. Enterprise Edition indeholder derimod ekstra funktioner og support til større applikationer eller virksomheder med avancerede behov, såsom kryptering, logføring og LDAP-integration.

Hvis de færdigkonfigurerede MongoDB-billeder på Docker Hub ikke fuldt ud opfylder dine behov, giver Docker dig mulighed for at oprette et **brugerdefineret Docker-billede** ved hjælp af en Dockerfile. Med en Dockerfile kan du vælge MongoDB-version, konfigurere specifikke indstillinger (f.eks. godkendelsesmetoder) og installere eventuelle yderligere værktøjer eller drivere, der er nødvendige for dit miljø.

## Sådan bruger du MongoDB som en Docker-container trin for trin

Docker er kendt for sin **letvægtsvirtualisering**, der sikrer portabilitet og ensartethed på tværs af forskellige udviklings- og produktionsmiljøer. Nedenfor vil vi trin for trin vise dig, hvordan du opsætter MongoDB-containere i Docker. Til begyndere anbefaler vi, at du læser vores [Docker-vejledning: Installation og første skridt](https://www.ionos.com/da-dk/digitalguide/server/konfiguration/docker-vejledning-installation-og-de-foerste-skridt/), som giver en detaljeret introduktion til containerplatformen.

### Trin 1: Download MongoDB-Docker-billedet

For at oprette en MongoDB-Docker-container skal vi først hente det relevante billede fra **Docker Hub**. Åbn din terminal eller kommandolinje, og kør følgende kommando:

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

Hvis billedet allerede findes lokalt, vil Docker ikke downloade en ny version, medmindre du udtrykkeligt angiver den version, du ønsker at bruge (f.eks. `mongo:4.4`).

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

Når Docker-billedet til MongoDB er blevet downloadet, kan du starte en container baseret på dette billede:

- `docker run`: Starter en ny Docker-container
- `--name mongodb-container`: Navngiver containeren ‘mongodb-container’
- `-d`: Brug denne parameter til at starte containeren i baggrunden (detached mode). Det betyder, at terminalen stadig kan bruges, mens containeren kører
- `-p 27017:27017`: Åbner MongoDB’s standardport 27017 på containeren på dit værtsystem
- `mongo:latest`: Giver instruktionen om at hente det seneste tilgængelige billede

### Trin 3: Kontroller, at containeren kører

For at sikre, at containeren er blevet startet korrekt, skal du indtaste følgende kommando:

```bash
docker ps
```

Denne information giver et hurtigt overblik over de aktive MongoDB-Docker-containere på dit system, herunder hvor længe de har kørt, og hvilke porte de bruger. For yderligere oplysninger, f.eks. om stoppede containere eller specifikke filtreringsmuligheder, anbefales det at bruge kommandoen `docker ps -a`.

### Trin 4: Opret en forbindelse til MongoDB i Docker-containeren

Nu kan du oprette forbindelse til MongoDB-instansen i din Docker-container. Det gør du ved at starte **MongoDB Shell** direkte i containeren:

- `docker exec`: Udfører en kommando i den kørende container
- `-it`: Tillader interaktion med terminalen i containeren
- `mongodb-container`: Navnet på den konfigurerede MongoDB-container
- `mongo`: Starter MongoDB-shell

Når du har kørt denne kommando, bør du nu kunne se MongoDB-shell’en, der er klar til at modtage kommandoer. Du kan nu indtaste de sædvanlige MongoDB-kommandoer til at administrere eller søge i din database.

### Trin 5: Udfør handlinger i MongoDB-shell

Du kan nu få vist alle eksisterende databaser på MongoDB-serveren på følgende måde:

```bash
show databases
```

Udskriften indeholder navnene på databaserne:

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

Hvis du vil arbejde med en bestemt database i MongoDB-shell, skal du bruge følgende kommando:

```bash
use mydatabase
```

Brug følgende kommando til at skifte til databasen med navnet »mydatabase«. Hvis databasen ikke findes, oprettes den automatisk, når der indsættes et dokument.

Du kan også hente dokumenter fra en bestemt samling:

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

MongoDB-shellen returnerer alle dokumenter, der er gemt 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 indeholder et unikt felt `_id` (MongoDB-specifik identifikator) samt andre felter, såsom `username` og `age`.

Du kan finde mere information om [Docker-værktøjer](https://www.ionos.com/da-dk/digitalguide/server/know-how/docker-vaerktoejer-oekosystemet-omkring-containerplatformen/) og en [præsentation af MongoDB, herunder en sammenligning med MySQL](https://www.ionos.com/da-dk/digitalguide/websteder/webudvikling/mongodb-en-introduktion-og-sammenligning-med-mysql/), i vores guide.


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