Docker: 5 more ways to use it
9th year of Docker is still growing more robust and mature. Unlike virtual machines, Docker is relatively lightweight and contains only the basic requirements of an OS for you to get started. We can use Docker in many ways to solve many real-world problems.
Let’s look at some practical use cases which are unique or less used.
Old is Gold
A Docker container is not the only place to run server-based, web-based or microservices-based applications but also for CLI applications.
Suppose a short-run CLI application that needs to securely access keys, passwords, or secrets from the Password provider(like Secret Server) is the right solution. We can hide the API key from the user by bundling the key inside the docker image.
And for a long-running application like video processing, data migration or big data processing, Docker is ideal. The default feature of Docker running the container in the background is the key benefit of this.
Guardian of Legacy
Many companies still depend on their legacy application, which relies on an older version of Linux, Python, or Java. Even many applications depend on an old version of dependent libraries. These legacy applications are worth a lot to continue, saving thousands of pounds from upgrading to new versions. To keep such legacy applications, Docker is the right choice. That Docker bundled application can run on an advanced modern environment like AWS Fargate or a similar platform without any issues. The customer saved thousands of pounds at the right time.
A developer like me is like a Chef in a star hotel. We need to be ready for the unexpected task. In the morning, we need to develop an API application using Python flask and PostgreSQL. Evening a quick fix is required for the .Net application. I need to shut down PostgreSQL and kick-start MS SQL. Docker is the right product to help us instantly change the developer environment for the next challenging tasks.
Can we host .Net based applications and MS SQL on a Linux server? Doing this using Docker is like a cakewalk. Any programming language (like Java or Python or .Net or Go Lang) on any OS platform, Docker help us to make this happen without rewriting or recompiling them. No need to install JRE (Java runtime environment) or .Net Runtime, or Python on the client system to run our work, just a Docker engine on the client system is enough.
To try any application, database, new technologies or framework before making any decision. Before upgrading to a recent version of an application like Magento, Odoo, WordPress, etc. Or a database like MySQL, PostgreSQL etc. Docker is the right choice for this.
The advantage of using Docker is are quick to try, without dirtying the OS setup, no need to uninstall the existing setups.