Docker Compose & Docker Swarm. Docker Compose is a YAML file which contains details about the services, networks, and volumes for setting up the application. So, you can use Docker Compose to create separate containers, host them and get them to communicate with each other. Each container will expose a port for communicating with other containers.
Docker is a containerization platform that packages your application and all its dependencies together in the form of Containers to ensure that your application works seamlessly in any environment. MongoDB requires a data directory to store all data. MongoDB’s default data directory path is data db. Create this folder using the following commands from a Command Prompt: md data db. You can specify an alternate path for data files using the -dbpath option to mongod.exe, for example: C: mongodb bin mongod.exe -dbpath d: test mongodb data.
Docker Tutorial provides basic and advanced concepts of Docker. Our Docker Tutorial is designed for both beginners as well as professionals.
Docker is a centralized platform for packaging, deploying, and running applications. Before Docker, many users face the problem that a particular code is running in the developer's system but not in the user's system. So, the main reason to develop docker is to help developers to develop applications easily, ship them into containers, and can be deployed anywhere.
Docker was firstly released in March 2013. It is used in the Deployment stage of the software development life cycle that's why it can efficiently resolve issues related to the application deployment.
Docker is an open-source centralized platform designed to create, deploy, and run applications. Docker uses container on the host's operating system to run applications. It allows applications to use the same Linux kernel as a system on the host computer, rather than creating a whole virtual operating system. Containers ensure that our application works in any environment like development, test, or production.
Docker includes components such as Docker client, Docker server, Docker machine, Docker hub, Docker composes, etc.
Let's understand the Docker containers and virtual machine.
Docker containers are the lightweight alternatives of the virtual machine. It allows developers to package up the application with all its libraries and dependencies, and ship it as a single package. The advantage of using a docker container is that you don't need to allocate any RAM and disk space for the applications. It automatically generates storage and space according to the application requirement.
A virtual machine is a software that allows us to install and use other operating systems (Windows, Linux, and Debian) simultaneously on our machine. The operating system in which virtual machine runs are called virtualized operating systems. These virtualized operating systems can run programs and preforms tasks that we perform in a real operating system.
Containers | Virtual Machine |
---|---|
Integration in a container is faster and cheap. | Integration in virtual is slow and costly. |
No wastage of memory. | Wastage of memory. |
It uses the same kernel, but different distribution. | It uses multiple independent operating systems. |
Docker is designed to benefit both the Developer and System Administrator. There are the following reasons to use Docker -
There are the following advantages of Docker -
There are the following disadvantages of Docker -
It is a client server application that contains the following major components.
Before learning Docker, you must have the fundamental knowledge of Linux and programming languages such as java, php, python, ruby, etc.
Our Docker Tutorial is designed to help beginners and professionals.
We assure that you will not find any difficulty while learning our Docker tutorial. But if there any mistake, kindly post the problem in the contact form.
To start the installation of Docker, we are going to use an Ubuntu instance. You can use Oracle Virtual Box to setup a virtual Linux instance, in case you don’t have it already.
The following screenshot shows a simple Ubuntu server which has been installed on Oracle Virtual Box. There is an OS user named demo which has been defined on the system having entire root access to the sever.
To install Docker, we need to follow the steps given below.
Step 1 − Before installing Docker, you first have to ensure that you have the right Linux kernel version running. Docker is only designed to run on Linux kernel version 3.8 and higher. We can do this by running the following command.
This method returns the system information about the Linux system.
a − This is used to ensure that the system information is returned.
This method returns the following information on the Linux system −
When we run above command, we will get the following result −
From the output, we can see that the Linux kernel version is 4.2.0-27 which is higher than version 3.8, so we are good to go.
Step 2 − You need to update the OS with the latest packages, which can be done via the following command −
This method installs packages from the Internet on to the Linux system.
sudo apt-get update
sudo − The sudo command is used to ensure that the command runs with root access.
update − The update option is used ensure that all packages are updated on the Linux system.
None
When we run the above command, we will get the following result −
This command will connect to the internet and download the latest system packages for Ubuntu.
Step 3 − The next step is to install the necessary certificates that will be required to work with the Docker site later on to download the necessary Docker packages. It can be done with the following command.
Step 4 − The next step is to add the new GPG key. This key is required to ensure that all data is encrypted when downloading the necessary packages for Docker.
The following command will download the key with the ID 58118E89F3A912897C070ADBF76221572C52609D from the keyserver hkp://ha.pool.sks-keyservers.net:80 and adds it to the adv keychain. Please note that this particular key is required to download the necessary Docker packages.
Step 5 − Next, depending on the version of Ubuntu you have, you will need to add the relevant site to the docker.list for the apt package manager, so that it will be able to detect the Docker packages from the Docker site and download them accordingly.
Precise 12.04 (LTS) ─ deb https://apt.dockerproject.org/repoubuntu-precise main
Trusty 14.04 (LTS) ─ deb https://apt.dockerproject.org/repo/ ubuntu-trusty main
Wily 15.10 ─ deb https://apt.dockerproject.org/repo ubuntu-wily main
Xenial 16.04 (LTS) - https://apt.dockerproject.org/repo ubuntu-xenial main
Since our OS is Ubuntu 14.04, we will use the Repository name as “deb https://apt.dockerproject.org/repoubuntu-trusty main”.
And then, we will need to add this repository to the docker.list as mentioned above.
Step 6 − Next, we issue the apt-get update command to update the packages on the Ubuntu system.
Step 7 − If you want to verify that the package manager is pointing to the right repository, you can do it by issuing the apt-cache command.
In the output, you will get the link to https://apt.dockerproject.org/repo/
Step 8 − Issue the apt-get update command to ensure all the packages on the local system are up to date.
Step 9 − For Ubuntu Trusty, Wily, and Xenial, we have to install the linux-image-extra-* kernel packages, which allows one to use the aufs storage driver. This driver is used by the newer versions of Docker.
It can be done by using the following command.
Step 10 − The final step is to install Docker and we can do this with the following command −
Here, apt-get uses the install option to download the Docker-engine image from the Docker website and get Docker installed.
The Docker-engine is the official package from the Docker Corporation for Ubuntu-based systems.
In the next section, we will see how to check for the version of Docker that was installed.
To see the version of Docker running, you can issue the following command −
version − It is used to ensure the Docker command returns the Docker version installed.
The output will provide the various details of the Docker version installed on the system.
When we run the above program, we will get the following result −
To see more information on the Docker running on the system, you can issue the following command −
info − It is used to ensure that the Docker command returns the detailed information on the Docker service installed.
The output will provide the various details of the Docker installed on the system such as −
When we run the above command, we will get the following result −
Docker has out-of-the-box support for Windows, but you need to have the following configuration in order to install Docker for Windows.
Windows OS | Windows 10 64 bit |
Memory | 2 GB RAM (recommended) |
You can download Docker for Windows from − https://docs.docker.com/docker-for-windows/
Docker ToolBox has been designed for older versions of Windows, such as Windows 8.1 and Windows 7. You need to have the following configuration in order to install Docker for Windows.
Windows OS | Windows 7 , 8, 8.1 |
Memory | 2 GB RAM (recommended) |
Virtualization | This should be enabled. |
You can download Docker ToolBox from − https://www.docker.com/products/docker-toolbox