GP - Fotolia

Q
Evaluate Weigh the pros and cons of technologies, products and projects you are considering.

How can a Docker container backup be more reliable and consistent?

Docker containers can be used to back up and restore data efficiently, but they come with some requirements that should be taken into account before implementing containerization.

The original goal of containerization, as exemplified by Docker, was to provide an environment for short-lived, temporary instantiations of applications. The benefit was the ability to develop, deploy and implement applications without the overhead and maintenance of physical servers or virtual machines. While Docker container backup can rapidly deploy code and be more responsive to a business, emerging adoption has shown that persistent data and persistent containers are still requirements when backing up with Docker.

Docker containers have both an operating system and a data component. The OS comes from Docker images that can be stored centrally and backed up from there.

There is no need to back up a container image from the host in a Docker container backup; it can simply be restarted. However, containers are also configurable with local networking and application settings. These parameters can either be pushed to the container using a management framework, such as Puppet, Chef and Ansible, or backed up and restored for the container.

External data for containers is presented via volumes. The most recent way to do this in the latest releases of Docker is by associating a mount point within the container with a share or directory on the host. The container itself has no real understanding of where the data comes from, but simply reads and writes data into one or more mount points that are presented to it. All of the data management tasks occur at the host, which is where Docker container backup could be improved.

With any backup, one of the main issues of restoring data is in identifying the backup itself. This process becomes even more complex with a container, where the container name may be generic and the container GUID is simply a random 64-byte character string.

A Docker container backup needs to ensure that any data backed up (either the container configuration or volume) is associated with an application that can be easily identified by the business. This guarantees that however the container is started, the application data is independently backed up and stored in a consistent fashion. One way to accomplish this is by creating backup ID files on the host as part of the configuration process.

Next Steps

The complete guide to Docker containers

Common issues with running Docker on VMs

A closer look at the Docker framework

This was last published in September 2016

Dig Deeper on Backup and recovery software

PRO+

Content

Find more PRO+ content and other member only offers, here.

Have a question for an expert?

Please add a title for your question

Get answers from a TechTarget expert on whatever's puzzling you.

You will be able to add details on the next page.

Join the conversation

2 comments

Send me notifications when other members comment.

By submitting you agree to receive email from TechTarget and its partners. If you reside outside of the United States, you consent to having your personal data transferred to and processed in the United States. Privacy

Please create a username to comment.

What benefits have you seen by backing up with Docker?
Cancel
I'm glad this thread exists. Our current setup is to have docker running the applications and postgresapp running on the host for easier data persistence, backup and restores. Not being able to easily access the database on the host is really keeping my team from adopting the beta.
Cancel

-ADS BY GOOGLE

SearchSolidStateStorage

SearchCloudStorage

SearchDisasterRecovery

SearchStorage

SearchITChannel

Close