Navigation

Install MongoDB Enterprise with Docker

Important

The recommended solutions for using containers with MongoDB are:

Note

This procedure uses Docker's official mongo image, which is supported by the Docker community and not MongoDB.

If the above recommended solutions do not satisfy your needs, follow the steps in this tutorial to manually install MongoDB Enterprise with Docker.

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

This documentation only describes installing MongoDB Enterprise with Docker, and does not replace other resources on Docker. We encourage you to thoroughly familiarize yourself with Docker and its related subject matter before installing MongoDB Enterprise with Docker.

Important

This procedure uses Docker's official mongo image, which is supported by the Docker community and not MongoDB. It supports only the major versions listed in their repositiory, and only a specific minor version for each major version. The minor version can be found in the Dockerfile in the folder for each major version.

1

After you have installed Docker and set up a Docker Hub account, download the build files from the Docker Hub mongo project with the following commands. Set MONGODB_VERSION to your major version of choice.

Note
Docker Hub Mongo Project

The Docker Hub mongo project is not maintained by MongoDB. Any support requests should go to Docker.

export MONGODB_VERSION=4.0
curl -O --remote-name-all https://raw.githubusercontent.com/docker-library/mongo/master/$MONGODB_VERSION/{Dockerfile,docker-entrypoint.sh}
2

Use the downloaded build files to create a Docker container image wrapped around MongoDB Enterprise. Set DOCKER_USERNAME to your Docker Hub username.

export DOCKER_USERNAME=username
chmod 755 ./docker-entrypoint.sh
docker build --build-arg MONGO_PACKAGE=mongodb-enterprise --build-arg MONGO_REPO=repo.mongodb.com -t $DOCKER_USERNAME/mongo-enterprise:$MONGODB_VERSION .
3

The following commands run mongod locally in a Docker container and check the version.

docker run --name mymongo -itd $DOCKER_USERNAME/mongo-enterprise:$MONGODB_VERSION
docker exec -it mymongo /usr/bin/mongo --eval "db.version()"

This should output the shell and server version for MongoDB.

Optionally, you can push your Docker image to a remote repository, like Docker Hub, to use the image on other host machines. If you push the image to Docker Hub, you can then run docker pull for each host machine on which you want to install MongoDB Enterprise via Docker. For complete guidance on using docker pull, reference its documentation here.

1

The following command displays your local Docker images:

docker images

You should see your MongoDB Enterprise image in the command output. If you do not, try Create a Docker Image with MongoDB Enterprise.

2

Push your local MongoDB Enterprise image to your remote Docker Hub account.

docker login
docker push $DOCKER_USERNAME/mongo-enterprise:$MONGODB_VERSION

If you log into the Docker Hub site, you should see the image listed under your repositories.

Give Feedback