Docs Menu
Docs Home
/
MongoDB Manual
/ /

Install MongoDB Community with Docker

On this page

  • About This Task
  • Before You Begin
  • Procedure
  • Next Steps (Optional)

You can run MongoDB community Edition as a Docker container using the official MongoDB Community image. Using a Docker image for running your MongoDB deployment is useful to:

  • Stand up a deployment quickly.

  • Help manage configuration files.

  • Test different features on multiple versions of MongoDB.

  • This page describes the Docker install instructions for MongoDB Community edition. The MongoDB Enterprise Docker image and MongoDB Kubernetes Operator are recommended for production deployments and should be used together. For enterprise instructions, see Install MongoDB Enterprise with Docker.

  • This procedure uses the official MongoDB community image, which is maintained by MongoDB.

  • A full description of Docker is beyond the scope of this documentation. This page assumes prior knowledge of Docker.

  • MongoDB 5.0+ Docker images require AVX support on your system. If your system does not support AVX, you can use a docker image of MongoDB prior to version 5.0.

    Warning

    Versions of MongoDB prior to 5.0 are EOL'd and no longer supported by MongoDB. These versions should be used for testing purposes only.

1
docker pull mongodb/mongodb-community-server:latest
2
docker run --name mongodb -p 27017:27017 -d mongodb/mongodb-community-server:latest

The -p 27017:27017 in this command maps the container port to the host port. This allows you to connect to MongoDB with a localhost:27017 connection string.

To install a specific version of MongoDB, specify the version after the : in the Docker run command. Docker pulls and runs the specified version.

For example, to run MongoDB 5.0:

docker run --name mongodb -p 27017:27017 -d mongodb/mongodb-community-server:5.0-ubuntu2004

For a full list of available versions, see Tags.

Note

Add Command Line Options

You can use mongod command-line options by appending the command-line options to the docker run command.

For example, consider the mongod --replSet docker command-line option:

docker run -p 27017:27017 -d mongodb/mongodb-community-server:latest --name mongodb --replSet myReplicaSet
3

To check the status of your Docker container, run the following command:

docker container ls

The output from the ls command lists the following fields that describe the running container:

  • Container ID

  • Image

  • Command

  • Created

  • Status

  • Port

  • Names

CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
c29db5687290 mongodb/mongodb-community-server:5.0-ubi8 "docker-entrypoint.s…" 4 seconds ago Up 3 seconds 27017/tcp mongo
4
mongosh --port 27017
5

To confirm your MongoDB instance is running, run the Hello command:

db.runCommand(
{
hello: 1
}
)

The result of this command returns a document describing your mongod deployment:

{
isWritablePrimary: true,
topologyVersion: {
processId: ObjectId("63c00e27195285e827d48908"),
counter: Long("0")
},
maxBsonObjectSize: 16777216,
maxMessageSizeBytes: 48000000,
maxWriteBatchSize: 100000,
localTime: ISODate("2023-01-12T16:51:10.132Z"),
logicalSessionTimeoutMinutes: 30,
connectionId: 18,
minWireVersion: 0,
maxWireVersion: 20,
readOnly: false,
ok: 1
}

You can use Cosign to verify MongoDB's signature for container images.

This procedure is optional. You do not need to verify MongoDB's signature to run MongoDB on Docker or any other containerized platform.

To verify MongoDB's container signature, perform the following steps:

1

For installation instructions, see the Cosign GitHub repository.

2
curl https://cosign.mongodb.com/server.pem > server.pem
3

Run the following command to verify the signature by tag:

COSIGN_REPOSITORY=docker.io/mongodb/signatures cosign verify --private-infrastructure --key=./server.pem docker.io/mongodb/mongodb-community-server:latest
← Install using msiexec.exe