Skip to content

Docker ​

Docker is an open-source platform that allows you to automate the deployment and management of applications using containerization. Containers provide a lightweight and isolated environment for running applications, ensuring consistency across different systems.

Dockerfile ​

A Dockerfile is a text file that contains a set of instructions for building a Docker image. An image is a standalone and executable package that includes everything needed to run an application, including the code, runtime, libraries, and dependencies.

Writing a Dockerfile ​

To create a Docker image, you need to define a Dockerfile. Here's an example of a basic Dockerfile:

docker
# Use an existing base image
FROM base_image

# Set the working directory inside the container
WORKDIR /app

# Copy the application files into the container
COPY . .

# Install dependencies (if any)
RUN command_to_install_dependencies

# Specify the command to run when the container starts
CMD command_to_start_application

Let's break down the different instructions:

  • FROM: This instruction specifies the base image to use for your application. You can use existing images available on Docker Hub or create your own base image.
  • WORKDIR: This instruction sets the working directory inside the container where subsequent instructions will be executed.
  • COPY: This instruction copies the application files from the host machine to the container's file system.
  • RUN: This instruction executes a command during the build process. It is commonly used to install dependencies, configure the environment, or perform any other necessary setup steps.
  • CMD: This instruction specifies the default command to run when a container is started. Only one CMD instruction can be present in a Dockerfile.

Building an Image ​

To build a Docker image from a Dockerfile, you need to use the docker build command. Open a terminal or command prompt, navigate to the directory containing the Dockerfile, and run the following command:

bash
docker build -t image_name .

If your dockerfile is in a subfolder and you need access to parent directories in your docker file, you need to navigate to the parent directory and run the following command:

bash
docker build -t image_name --file ./subfolder/Dockerfile .

This will give access to all the parent directories to your dockerfile.

Running a Container ​

Once you have built an image, you can run a container based on that image using the docker run command. Here's an example:

bash
docker run image_name

Replace image_name with the name of the image you want to run. Docker will create a new container based on the image and execute the command specified in the CMD instruction.

Deployment ​

See the next section on how to deploy your docker image.

Released under the MIT License.