Install MongoDB Community with Docker
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.
About This Task
This page describes the Docker install instructions for MongoDB Community edition. The MongoDB Enterprise Docker image and MongoDB Enterprise 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.
Before You Begin
Procedure
Run the Image as a Container
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
Check that the Container is Running
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
Validate Your Deployment
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 }
Next Steps (Optional)
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:
Download and install Cosign
For installation instructions, see the Cosign GitHub repository.