Install MongoDB Enterprise with Docker (original) (raw)

Important

The recommended solutions for using containers with MongoDB are:

You can run MongoDB Enterprise Edition as a Docker container using the official MongoDB Enterprise image. Use a Docker container to run your MongoDB deployment if you want to:

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.


docker pull mongodb/mongodb-enterprise-server:latest


docker run --name mongodb -p 27017:27017 -d mongodb/mongodb-enterprise-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-enterprise-server:5.0-ubuntu2004

For a full list of available versions, seeTags.

Note

Add Command Line Options

You can use mongod command-line optionsby 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-enterprise-server:latest --name mongodb --replSet myReplicaSet

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

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


CONTAINER ID   IMAGE                                      COMMAND                 CREATED         STATUS         PORTS       NAMES

c29db5687290   mongodb-enterprise-server:latest  "docker-entrypoint.s…"   4 seconds ago   Up 3 seconds   27017/tcp   mongo

To confirm your MongoDB instance is running, run the Hellocommand:


db.runCommand(

   {

      hello: 1

   }

)

The result of this command returns a document describing yourmongod 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:


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

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-enterprise-server:latest

For compatibility information, seeDocker & MongoDB.