Skip to content

TechDirectArchive

Hands-on IT, Cloud, Security & DevOps Insights

  • Home
  • About
  • Advertise With US
  • Reviews
  • Contact
  • Toggle search form
Home » Linux » Create and Mount Volume to Docker Container

Create and Mount Volume to Docker Container

Posted on 07/01/202328/03/2024 Imoh Etuk By Imoh Etuk No Comments on Create and Mount Volume to Docker Container
Docker-Volumes

In this guide, you will learn how to create and mount the host volume in a Docker container. Containers play a crucial role in application deployment. Docker is one of the most widely used open-source container runtimes. Please see How to manually update Docker desktop, how to install and uninstall Docker Desktop on Windows 10 and Windows Server, and How to manually update Docker desktop.

Docker volumes are popular and practical solutions for ensuring data persistence when working with containers. They are a better option than bind mounts, which depend on the directory structure and OS of the host computer because Docker entirely manages them.

Volumes defeat building additional writable layers that increase the size of the Docker image. Using Docker Volume is suitable when working on a micro-service architecture using Docker containers in order to build and test various application components.

Willing to learn more about Docker? See related posts as follows: How to Set up a Private Docker Registry, how to Run Docker commands returns Docker is not recognized as an internal or external command, Running Docker commands returns Docker is not recognized as an internal or external command

What are Volumes?

Before proceeding to the demo section, understanding what Docker Volumes are is necessary.

In a short and simple sentence, Docker volumes are file systems mounted on Docker containers for the purpose of preserving data produced by the container while it is running.

A volume does not increase the size of the containers that use it, and the contents of a volume live outside the lifespan of a particular container, making them a frequently preferable option to persisting data in a container’s writable layer.

Working with Docker Volumes

During container launch, several possible approaches to mounting a Docker volume exist. The -v and --mount flags that are added to the docker run the command is up to the user to decide.

Below are a few things to know about Docker Volumes:

  1. When the container disappears, the data is lost, and removing the data from the container can be challenging.
  2. Bind mounts are more difficult to transfer or backup than volumes.
  3. Volumes can be managed using the Docker API or the Docker CLI
  4. Both Linux and Windows containers support volumes.
  5. Shared volumes between numerous containers can be done more securely.
  6. Docker Volume is one of the concepts required in order to maintain Data persistence in the Docker container.

Getting Started with Docker Volume

To get started with mounting a Docker Volume, one of the criteria is to have Docker installed on your system. To learn how to install and set up Docker on your Ubuntu Machine, refer to this post on How to install Docker Engine on Ubuntu. After setting up Docker on your machine, run the docker --version command verify that installation.

Checking-Docker-Version
Checking Docker Version

Now that you have set up Docker on your machine, run the docker volume ls command to check the existing volumes.

Existing-Volumes
Checking the Existing Docker Volumes

Creating a Volume

The docker volume create command is a perfect command to run to create a Docker Volume. To do so, run:

sudo docker volume create <volume name>

Verify the newly created volume as shown in the screenshot below. Remember to specify a unique name for your Volume.

Creating-and-verifying-the-volume
Creating and verifying the new docker volume

Also, see How to stop Docker from automatically starting on Mac, and how to fix “Failed to remove network for build: Error during connect in the default daemon configuration on Windows, the Docker client must be run with elevated privileges“.

Inspecting Docker Volume

Now that we have created a Volume, it’s time to inspect the volume. To do so, run the command below:

docker inspect <volume-name>
Inspecting-Docker-Volume
Inspecting a Docker Volume

Mounting Docker Volumes

Having created and inspected the Docker Volume, we will mount the volume to a Docker Container. With the help of the -v flag, we’ll mount the my-volume Volume to the Docker Container we’ll create using an Ubuntu base image.

sudo docker run -it -v my-volume:/shared-volume --name ubuntu-container-001 ubuntu

Running the above command will create the ubuntu base image container and mount the volume. From the screenshot below, we create a file named Test-file.txt and exited the container with the exit command.

Create-a-file
Mounting Docker Volume and Creating a File

Now, let’s create another  Docker Container called ubuntu-container-002 and mount the same Docker Volume called my-volume  inside the Container using the below command:

sudo docker run -it -v my-volume:/shared-volume --name ubuntu-container-002 ubuntu
Mounted-Second-Container
Creating Another Volume and Verifying the Content

If you change the directory to the share-volume directory and use the ls command to list the content you will see the same test-file.txt file that was created in the same <my-volume> Volume but mounted in ubuntu-container-001.

This is because the my-volume Volume is shared between two containers that are ubuntu-container-001 and ubuntu-container-002.

To summarize, we discussed how to create, inspect, and mount a Volume to multiple Docker Containers in this post. This is extremely useful when multiple Docker Containers require shared access to files and directories.

Rate this post

Thank you for reading this post. Kindly share it with others.

  • Share on X (Opens in new window) X
  • Share on Reddit (Opens in new window) Reddit
  • Share on LinkedIn (Opens in new window) LinkedIn
  • Share on Facebook (Opens in new window) Facebook
  • Share on Pinterest (Opens in new window) Pinterest
  • Share on Tumblr (Opens in new window) Tumblr
  • Share on Telegram (Opens in new window) Telegram
  • Share on WhatsApp (Opens in new window) WhatsApp
  • Share on Mastodon (Opens in new window) Mastodon
  • Share on Bluesky (Opens in new window) Bluesky
  • Share on Threads (Opens in new window) Threads
  • Share on Nextdoor (Opens in new window) Nextdoor
Containers, Linux Tags:Ubuntu

Post navigation

Previous Post: Install and use Burp Suite for Web Application Security Testing
Next Post: Performance and Diagnostics in Microsoft Cloud with Azure Monitor

Related Posts

  • feature image
    How to install PostgreSQL on Ubuntu Linux
  • FEAUREanydesk
    How to install AnyDesk on a Linux Machine Linux
  • SSL on WAMPServer
    Setup VirtualHost with SSL on WAMP Server Linux
  • Screenshot 2022 03 21 at 18.06.30
    How to Configure Virtual Host for Apache HTTP Web Server to Host Several Domains on Ubuntu 20.04 LTS Linux
  • ysvxdf
    Install and configure BigBlueButton on Ubuntu Linux Linux
  • SUBVERSION FEATURE
    How to Install Apache Subversion on a Linux System Linux

More Related Articles

feature image How to install PostgreSQL on Ubuntu Linux
FEAUREanydesk How to install AnyDesk on a Linux Machine Linux
SSL on WAMPServer Setup VirtualHost with SSL on WAMP Server Linux
Screenshot 2022 03 21 at 18.06.30 How to Configure Virtual Host for Apache HTTP Web Server to Host Several Domains on Ubuntu 20.04 LTS Linux
ysvxdf Install and configure BigBlueButton on Ubuntu Linux Linux
SUBVERSION FEATURE How to Install Apache Subversion on a Linux System Linux

Leave a Reply Cancel reply

You must be logged in to post a comment.

Microsoft MVP

VEEAMLEGEND

vexpert-badge-stars-5

Virtual Background

GoogleNews

Categories

veeaam100

sysadmin top30a

  • banner
    Various ways to restart an AWS EC2 instance AWS/Azure/OpenShift
  • image 73
    How to manage and use Amazon S3 access points using the AWS Management Console AWS/Azure/OpenShift
  • maxresdefault
    Linux Directory Hierarchy Linux
  • Fix Windows Installer Service Could Not Be Accessed Error
    How to Fix the “Windows Installer Service Could Not Be Accessed” Error While Installing an Application Windows
  • Quick Connect
    How to fix Synology NAS Quick Connect is not enabled issue Storage
  • LiveCaption
    Enable or disable automatic Google Chrome Live Caption on macOS Mac
  • VBR patch update
    Patch Veeam Backup and replication 12.3.2.3617 to 12.3.2.4165 Backup
  • 960x0
    How to resolve request timed out when pinging Windows Server

Subscribe to Blog via Email

Enter your email address to subscribe to this blog and receive notifications of new posts by email.

Join 1,825 other subscribers
  • RSS - Posts
  • RSS - Comments
  • About
  • Authors
  • Write for us
  • Advertise with us
  • General Terms and Conditions
  • Privacy policy
  • Feedly
  • Telegram
  • Youtube
  • Facebook
  • Instagram
  • LinkedIn
  • Tumblr
  • Pinterest
  • Twitter
  • mastodon

Tags

AWS Azure Bitlocker Microsoft Windows PowerShell WDS Windows 10 Windows 11 Windows Deployment Services Windows Server 2016

Copyright © 2025 TechDirectArchive

 

Loading Comments...
 

You must be logged in to post a comment.