In this article, we will see how to run mongodb as a docker container in development.
- Docker Install Mongodb Windows 10
- Docker Compose Install Mongodb
- Docker Install Php Mongodb Extension
- Docker Install Mongodb Download
As a developer, we all know how frustrating it is to setup a database and start it in development environment everyday.
Sudo docker search mongodb. The search results show us that an official MongoDB container image called mongo exists in the docker container registry. By default, the MongoDB container stores the databases within the /data/db directory within the container. Next, we need to create a directory called “mongodb” to hold the docker-compose file. Adding Docker with multi-stage build. Containerizing our applications with Docker has many advantages. For us, the two most important are that the application will behave as expected regardless of the environment, and that it is possible to install all the external dependencies (in our case, Redis and PostgreSQL) automatically when starting the application. MongoDB is well suited for distributed environments, such as Docker containers. Using Docker and an official MongoDB container image can significantly shorten and simplify the database deployment process. This tutorial will show you how to deploy a MongoDB instance on a Docker container. 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.
Well, i have also been in the situation unless docker came into play.
As we all know, Docker solves the problem of 'it is working on my machine' problem.
Let's see how to setup mongodb once and run it without any problem in development environment.
If you are completely new to the concepts of docker, i recommend you to read this article series to get better idea.
If you are already familiar with docker, but want to learn how to setup docker and nodejs. read this article to learn about it.
Docker Setup
Before running the docker commands, i assume that you have docker installed on your machine, if not, you can install and complete the setup first.
MongoDB as Docker Container
To run mongoDB in docker, you need the mongodb image in your local docker daemon. you can get the image using the command,
the above command will pull the mongodb image from docker registry.
Once, you pull the mongoDB image from docker image registry, you can run the image with a single command.
that's it..
really..... you can now start using mongoDB in your application.
So simple..right?.
Now, we will try to understand what is going on under the hood and what does it really do
Here, i have separated the command into four parts to understand it in a better way.
Part1
Here, we are running the docker container with a detached mode. there are two mode to run docker container. one is detached and another one is interactive mode.
detached mode will run in background whereas interactive mode runs in the foreground(terminal will be active).
Problem with interactive mode is if you close the terminal, container will stop running.
Part 2
Here, -p represents the port of the container. you can map the port of the container and your machine port to communicate with the container.
As MongoDB always run in port 27017, we map the ports here.
Part 3
After that, we added flag --name which represents the docker container name. you can specify the name you want to have it for your mongoDB container.
Part 4
Lastly, we mount the volume of docker container and local machine volume. This is one of the important commands in the whole part.
-v /data/db:/data/db mount the volume of docker container db directory and local machine db directory.
so that, you won't lose your database data even after restarting the container.
Summary
To sum up, this simple step on running the mongoDB local development on docker can save you lot of time on development. i recommend you to use this on your development process.
Want to stand out from the Crowd?
Docker Install Mongodb Windows 10
No spam, ever. Unsubscribe anytime.
To Read More
Modern React Redux Toolkit - Login ...
User Authentication is one of the common workflow in web applications. In this t...
Building Nodejs Microservice - A Cl...
This Article explains everything about how to build Nodejs Microservices in clou...
Docker Compose Install Mongodb
Docker Install Php Mongodb Extension
I Accidentally wiped the entire dat...
One of the tragic accident in my job turned out to be good learning for me in re...