I use Docker primarily for backend services to containerize applications or for API communications.
Docker on Ubuntu 20.04 LTS
Supported Images | 20250721Linux/Unix, Ubuntu 20.04 LTS - 64-bit Amazon Machine Image (AMI)
External reviews
External reviews are not included in the AWS star rating for the product.
Containerization simplifies application deployment and integration with CI/CD tools
What is our primary use case?
What is most valuable?
The most valuable feature is the simple containerization. I can specify what I need to install in a shell to ensure the application runs. It's a straightforward and easy-to-use feature. I also use it with CI/CD tools, finding it a good solution for integration.
What needs improvement?
In terms of communication between services, perhaps the configuration within networks between containers could be improved.
For how long have I used the solution?
I have been working with Docker for about six years.
What do I think about the stability of the solution?
The stability is excellent. I would rate it ten out of ten.
What do I think about the scalability of the solution?
By using Kubernetes, scalability is simple and can be done without issues.
Which solution did I use previously and why did I switch?
Some developers might use virtualization solutions like VMware, however, Docker is much better because it is simple.
How was the initial setup?
Overall, the setup is simple.
What's my experience with pricing, setup cost, and licensing?
I consider Docker's pricing to be affordable.
Which other solutions did I evaluate?
Some developers might consider virtualization solutions like VMware.
What other advice do I have?
I would recommend Docker for a wide range of users, from 50 to five million users, as it is simple to configure.
I rate the overall solution ten out of ten.
Which deployment model are you using for this solution?
Time-saving deployment with seamless virtualization for diverse environments
What is our primary use case?
I used Docker to Dockerize Java code. We had a code base, and I needed to create a Docker image from it so that it could be deployed. At the time, we used Docker Compose, which is somewhat similar to Kubernetes.
How has it helped my organization?
Docker allows virtualization at a higher level without the need for a host machine. You can have a few libraries in the image, and it will run on any machine, making deployment easier. This approach reduces the number of headaches compared to traditional methods.
What is most valuable?
Docker provides another level of virtualization where you don't need the host machine. The ability to use an image with the software built into it, rather than just the software, is beneficial. It allows the software to run on various machines without compatibility issues, saving a lot of time.
What needs improvement?
Docker is a time-tested, proven solution with industry-wide applications. There can be challenges with port mapping, however, that's not related to Docker itself.
For how long have I used the solution?
I started using Docker when I began my career in cloud computing. It has been approximately five or six years since I last created a Docker image.
What do I think about the stability of the solution?
Docker is fairly old, and there are existing GitHub repositories for any issues that arise. We can often resolve these issues ourselves through online resources.
What do I think about the scalability of the solution?
Docker is highly scalable. Without the need for physical hardware, you can run multiple images on your server. Previously, only one or two applications could run on a server, but now it can handle hundreds of applications, scaling up or down as needed.
How are customer service and support?
I have never had to contact Docker's support team.
How would you rate customer service and support?
Positive
How was the initial setup?
The initial setup is not difficult, especially with Docker Desktop. It allows you to manage images easily without having to run commands if you prefer not to.
What other advice do I have?
Docker is well-established in the market. Most people in DevOps or IT are familiar with Docker or creating Docker images. It is easy to use.
I'd rate the solution ten out of ten.
Useful to create sandbox environments to run applications and makes it easy to test them
What is our primary use case?
I work with startups and companies looking to build products from scratch to production. I handle deployments from various teams and use AWS. My experience includes deploying applications, setting up APIs, adding load balancers, and managing traffic. Docker is essential for this work, allowing me to create sandbox environments to run applications. Essentially, Docker helps manage clusters of applications and maintain the cloud environment.
What is most valuable?
The tool's most valuable feature is its sandbox environment. It makes it very easy to run and test applications without needing configurations, which is the core advantage of containerization. Kubernetes and Helm are helpful as they provide high-level metrics, making tracking the status of all the containers and applications running easier.
What needs improvement?
One of the challenges I face with Docker is debugging containers within the infrastructure. It can be tricky to debug applications inside containers, which is a common issue among developers. If easier tools or methods were available to debug applications within Docker containers, it would be very beneficial.
For how long have I used the solution?
I have been working with the product for two to three years.
How are customer service and support?
I have never contacted support since documentation is available on the issues. The community is huge, and the documentation is pretty good. Additionally, there is information online that I can refer to.
How was the initial setup?
Overall, setting up the Docker environment is quite easy. Many methods exist, such as using Docker Compose and Docker networks to communicate between containers. The main challenge lies in designing the architecture and integrating different frameworks and microservices.
I would rate the ease of setting up the tool at around nine out of ten. The time it takes to deploy depends on the scale of the system. For the early-stage startup I'm currently working with, it doesn't take much time. It's just me handling the deployment. In our early-stage startup, we have a couple of teams with around four to five backend APIs and two front-end services. Deploying these doesn't take much time. My focus is more on minimizing costs due to our lean startup structure.
What was our ROI?
Using the solution containers saves a lot of time compared to deploying on EC2 instances. It simplifies deployment and greatly reduces the deployment time. So, the internal ROI is quite good, making Docker a very valuable tool for us.
What's my experience with pricing, setup cost, and licensing?
Regarding pricing, we primarily use AWS for our deployments since we have funding for it. We don't spend much on Docker-specific services, just the containerization product. Docker Hub isn't particularly expensive either, so overall, the pricing is pretty reasonable.
What other advice do I have?
I'm a backend engineer and handle major deployments—I'm the only one on the team who does this. I help deploy and configure the product and expose endpoints for other teams. If a service stops working, they contact me to address the issue. I also maintain the deployed environments, including building, testing, and development.
I rate the overall product a ten out of ten.
Enables us to facilitate deployment, do updates, and management
What is our primary use case?
The solution is used to run systems in small applications.
How has it helped my organization?
You should start by running your applications to ensure optimal performance in a Docker environment. The administrator should validate the setup with Kubernetes before deployment. This process includes validating our software applications and comparing features with other open-source alternatives. It’s important to understand that application performance can vary due to various factors. For instance, issues may arise due to ZDR policies. Before deploying in production, consider using OpenShift if additional features are needed. Our organization currently uses Oracle, but Docker provides a flexible and efficient way to manage our applications.
What is most valuable?
We use Docker to facilitate deployment, updates, and management.
What needs improvement?
Enhancing artificial intelligence capabilities and cluster management should be a priority. It should facilitate some security management.
For how long have I used the solution?
I have been using Docker for four years.
What do I think about the scalability of the solution?
I have been going through the session block for enhancement. I rate the solution’s scalability a six out of ten.
How was the initial setup?
The initial setup is straightforward.
What's my experience with pricing, setup cost, and licensing?
It requires a premium subscription.
What other advice do I have?
The CI/CD was created, and the template is there. It's sufficient to prevent blockers. The restore is deployed, and we are conducting large-scale scans to identify duplicates. For continuous intelligence, we are using Azure DevOps tools from GitLab. We use Docker for various tasks like scanning, automation, testing, and searching.
We support software implementation and maintenance. Nowadays, we update our software regularly. Our recommendation for regular users is to avoid using outdated software, especially when it involves personal data sources such as software applications, desktops, and internet usage.
Azure uses Docker and integrates with Azure products. Docker overlaps the network, which facilitates communication between containers. This network operates on VPNs but can utilize third-party gateways to reach and solve problems.
Docker has more advanced authentication, backup, and accountability.
Overall, I rate the solution a six out of ten.
Which deployment model are you using for this solution?
Easy to use, provides a lot of flexibility, and enables users to deploy applications quickly
What is our primary use case?
Docker helps us implement applications quickly.
What is most valuable?
Docker is convenient and easy to use. We can create and implement different types of virtual machines. It provides a lot of flexibility. The applications can be deployed quickly.
What needs improvement?
The stability could be improved.
What do I think about the stability of the solution?
The product is stable and reliable. I rate the stability a nine out of ten.
What do I think about the scalability of the solution?
Five engineers in the IT team use the product in our organization.
How are customer service and support?
The support team is fast, customer-friendly, knowledgeable, and quite professional.
How was the initial setup?
We didn't face any issues with the installation.
What about the implementation team?
We deployed the tool in-house.
What was our ROI?
The tool provides a return on investment. We are able to deploy some services and applications faster and be aligned with business requirements.
What's my experience with pricing, setup cost, and licensing?
We have a monthly subscription. The product is not expensive. I rate the pricing an eight out of ten.
What other advice do I have?
We do not use the solution often. It works well. We don’t have huge projects. I will recommend the tool to others. Everyone in IT uses Docker. Everyone knows it. At some level, a company must find a way to use Infrastructure as a Service by implementing different container technologies like Docker. Many IT personnel are aware of the solution. Overall, I rate the tool a nine out of ten.
Suitable for enterprises and helps with device management
What is our primary use case?
In our line of work, we've been involved in various sectors, such as industrial products, transportation, client engineering, telecom, and medical. For instance, we're currently developing an IT platform. One key use case we're tackling is device management.
We're looking at managing devices within our setup. These devices send data or signals, which then get transferred to the cloud. It's all about handling the lifecycle of these devices, deploying them, and managing non-provisioned ones, both on our end and on the client's side.
What needs improvement?
Docker needs to improve its pricing.
What do I think about the stability of the solution?
I rate Docker's stability a nine out of ten.
What do I think about the scalability of the solution?
One of the primary reasons we use the tool is its scalability. It scales easily, and we haven't had any issues with it.
How are customer service and support?
Docker's support is user-friendly, fast, and knowledgeable.
How was the initial setup?
The tool's deployment difficulty is medium.
What other advice do I have?
It tends to make sense as an investment for larger enterprises, but the cost might seem expensive for smaller businesses.
Has good speed and flexibility
What is our primary use case?
Docker is a development platform for containerization.
What is most valuable?
The solution offers speed and flexibility.
What needs improvement?
The solution could offer better documentation.
For how long have I used the solution?
I have been using Docker for more than a year. We are using the latest version of the solution.
What do I think about the stability of the solution?
I rate the solution's stability an eight or nine out of ten.
What do I think about the scalability of the solution?
The solution is scalable.
How was the initial setup?
The initial setup is straightforward.
What other advice do I have?
I recommend the solution and tell them to explore it the first time and then make a decision. It's reliable, quite mature and reliable.
Overall, I rate the solution a nine out of ten.
Which deployment model are you using for this solution?
Offers application conversion to Docker image and a mature environment
What is our primary use case?
In our company, I mostly design 5G networks and my work revolves around virtualization of the 5G core, which is known as backhaul. In our organization, we use many containerization technologies to obtain a proper ROI.
No-code servers and other servers are used in a combination predominantly as part of our company operations, which is the most relevant approach in the service provider or enterprise end. For small-scale customers of our organization, we use a combination of Kubernetes and Docker to drive adoption.
One of the main use cases of Docker is resource utilization. Like traditional VMs, there is no need to depend upon reserving resources and it's much easier to spin up required instances for consumption using Docker.
What is most valuable?
The capability of the solution to convert an application into a Docker image is a vital functionality.
What needs improvement?
The learning curve with Docker is huge and extensive. Adopting Docker is a bit difficult because it requires a lot of expertise and background, including an understanding of networking and security concepts. Many professionals are facing issues with the different architectures that interact with each other in Docker.
Whenever in our company, we are working with the production environment, professionals are hesitant to adopt Docker due to the extensive learning curve, and most of the team members in our company are more accustomed to an environment like VMware instead of Docker.
Docker runs on scripts, so if AI can automate most of the scripting process in Docker, it would be a great advantage in the future version of Docker. As of now, we can create scripts utilizing most of the functions within Docker, but that initial planning phase wherein to understand exactly how you will plan for the resources, how you will convert applications into a Docker-based image, and similar tasks needs to be simplified so that more professionals can adopt Docker.
For how long have I used the solution?
I have been working with Docker for almost four years.
What do I think about the stability of the solution?
I would rate the stability an eight out of ten. Docker provides a highly stable environment to work with.
What do I think about the scalability of the solution?
I would rate scalability a five out of ten. In Docker, it's very difficult to predict how scaling works and this is where automation should be implemented. I would recommend Docker for small and medium-sized businesses as it provides a practical environment that can facilitate cost-savings. Docker also doesn't have critical workloads.
The applications used in critical workloads consume a high proportion of traditional server and physical infrastructure; by using Docker, the efficiency can be enhanced ten times. Docker is definitely a great option for small businesses that are trying to deploy applications on the cloud. Whether primarily deployed on-prem or cloud, with Docker the application can be moved in between them.
How are customer service and support?
I personally depend on the Docker community to resolve my issues with the product and avail support.
How was the initial setup?
The setup process of Docker is extremely simple. Docker is compatible with multiple operating systems, including macOS, Windows, and Ubuntu.
What's my experience with pricing, setup cost, and licensing?
I would rate the pricing of Docker as ten out of ten.
Which other solutions did I evaluate?
OpenShift is gaining more popularity than Docker because it is used in enterprises that follow the traditional model. OpenShift is from Red Hat, and many enterprises are already running Red Hat-based systems at the back end, so it becomes much easier for them to move to OpenShift than to migrate to Docker.
For Docker based adoption, the entire existing infrastructure needs to be changed to migrate into the Docker environment but for OpenShift the older architecture just needs to be brought into the latest architecture.
What other advice do I have?
For container management, Kubernetes is our primary tool of choice in our organization, and we recommend the same for most of our customer's enterprise environments, but now we are witnessing a high adoption rate for OpenShift which has all the features of Kubernetes.
At our company, we are also noticing the rise of another competitor tool for Docker, which is called Amazon EKS, which runs on the cloud with a Kubernetes background. I can easily manage my public and private cloud using the same containerized environment and one single orchestrator.
There are complexities in integrating Docker with other CI/CD tools because the available documentation is not straightforward. An expert is required with hands-on project experience to integrate Docker with other solutions.
The solution should provide better deployment documentation with added project examples that can be used like a workbook by professionals. The vendor should develop and provide some explainer videos around Docker with a major focus on how AI has came to the picture and how Docker will provide integrations with automation and a Generative AI context. I have had two or three instances where I had used ChatGPT to deploy a code on behalf of me, but it took three of my colleagues to understand the AI-generated code.
In recent days, I have noticed that enterprises are not adopting Docker, and they are choosing a solution like Proxmox. Other competitor solutions to Docker are easier to use, so the usability factor is causing the adoption of products other than Docker. But I would say Docker has a more mature environment than the competitors.
The product is still at an early stage in terms of security. The basic aspects of security are covered, but there is a lot of room for improving the solution's security. Our organization works on container security and Docker should improve on container security.
If you are working on Docker, you need to have expertise in the product, it's security, architecture and resource planning. I would choose OpenShift over Docker. I would overall rate Docker an eight out of ten.
I'll definitely recommend Docker to users, especially to professionals who are working with a cloud-based environment, server-less architecture, or developers who are trying to build efficient applications. Docker is an excellent learning platform to initially get accustomed to basic architectures before shifting to more complex architectures like OpenShift.
Which deployment model are you using for this solution?
It's beneficial in bridging the gap between monolithic and serverless platforms, making it easier to scale and manage applications
What is our primary use case?
Docker focuses on converting applications into containers, which reduces their footprint. It allows running multiple instances of applications in containers, ensuring high availability and scalability. It is beneficial for cost savings and managing demand effectively. Many are shifting to Docker for improved budget management and performance, although not all applications are suitable for Docker. Trying it out is necessary to understand its benefits fully.
What is most valuable?
Kubernetes is the primary container orchestration tool I use with this solution. Docker provides a complete solution for deploying and managing workloads across multiple nodes. Container orchestration has significantly impacted my workload by automating tasks and streamlining operations. The availability of systems like Kubernetes is crucial for planning and managing complete clusters and computing environments. Every client's needs are different, and not one solution fits all.
What needs improvement?
As for improving Docker, I would like to see enhancements in its user interface and documentation to make it even more user-friendly and accessible. I believe Docker will expand its scope and reduce limitations to support more applications, both online and offline. For instance, in scenarios like deployments on ships or during upgrades, Docker can continue to offer software services and container-based intelligence.
For how long have I used the solution?
I have been using Docket for the last year.
What do I think about the scalability of the solution?
It is scalable product.
How are customer service and support?
The support from Docker has been excellent in my experience. I've never encountered any major issues or challenges with their support.
How was the initial setup?
The setup is quite simple. Containerization makes it easy, requiring minimal lines of code to run Docker instances. The configuration varies based on your specific application needs, but overall, it's straightforward. Once you automate the environment, deploying workloads becomes seamless.
What was our ROI?
Using Docker provides immense value and benefits. One major advantage is the ability to provision environments quickly, reducing the time needed for setup. Additionally, Docker allows applications to run efficiently on smaller hardware, making it cost-effective in terms of infrastructure. The return on investment with Docker is substantial due to these benefits.
What other advice do I have?
Overall, I would rate the solution ten out of ten.
I recommend using Docker for newer applications and complex ones as well. It's beneficial in bridging the gap between monolithic and serverless platforms, making it easier to scale and manage applications.
The solution would simplify various areas of AI-driven projects. AI is a vast field with different focuses such as generative AI. As AI continues to evolve, it holds the potential to handle more tasks efficiently, which could greatly benefit AI-driven projects.
Simplifies software dependencies, enhances productivity, and enables easy sharing and collaboration across different ALM models
What is our primary use case?
We normally use Docker for building and testing all of our applications in a much faster way. We create the software as packages and then use Docker to create containers to build these packages. This process allows us to run and manage our applications.
What is most valuable?
The tool helps us in code versioning. I think it's pretty much easy to use and very straightforward. Even if someone is new to the tool, they can easily start using it with a little guidance or theoretical knowledge. Go through the tool and start using it without much struggle.
Docker reduces our efforts. However, from an AI perspective, we haven't explored it extensively yet. We need to start incorporating it more. Currently, our version doesn't utilize Docker heavily for AI tasks, but we plan to revise and implement our model in the future.
What needs improvement?
Sometimes, we have sync-up issues where the build doesn't get processed due to these sync issues, causing the build to fail. That's one of the drawbacks I see. When we did a huge sync-up, we faced a couple of issues. It takes some time for us to complete the sync-up. For frequent, smaller updates, we haven't had any issues. However, challenges can arise for those who prefer doing everything in one go. This might not necessarily be due to the tool itself but because of the approach of doing everything in a single batch.
For how long have I used the solution?
I have been using the product for eight to nine months.
What do I think about the stability of the solution?
I rate Docker's stability a nine out of ten. It's a good product because it simplifies everyone's work, whether related to coding, testing, or integrating with multiple parts and management.
What do I think about the scalability of the solution?
I rate the solution's scalability a nine out of ten. My company has eight to nine users.
How was the initial setup?
The tool's deployment can be a challenge. It can be a bit challenging if someone is completely new and has never worked on it before. It has too many steps. Ideally, it can be finished quickly in about three or four steps.
What about the implementation team?
An integrator helped us with the deployment.
What was our ROI?
Docker streamlines our workflows and provides faster results. It simplifies our software dependencies, enhances productivity, and enables easy sharing and collaboration across different ALM models.
What other advice do I have?
I rate the overall product a nine out of ten.