Excellent tool for rapid DevOps
Updated December 11, 2018
Excellent tool for rapid DevOps
Overall Satisfaction with Docker
Reducing deployment friction is the chief benefit. The advent of the Cloud allowed us to break away from physical servers and rapidly develop our products and services. Docker adds a Saturn 5 rocket to that. It allows developers to easily build very complex application on their local machines much the same way VMs did, but with a fraction of the resources VMs take because of their reduced footprint. This in turn allows sharing prebuilt "containers" with a community be it within an organisation or global in a matter of seconds. Additionally, the days of configuration drift are solved because we all have a common "language" for sharing configurations regardless of the tools used to build them.
- The best way to eliminate typical dev/testing/prod environment issue.
- Simplified the deployment practice for most service systems.
- Also contains a large number of pre-built images includes most frequently used services, Nginx, MySQL, etc. Implemented a new way to set up a service with nearly zero impact on the host.
- Different running model compares to traditional software development/deployment method
- Introduced a little complicated management of networking/storage
- Difficult to remote manage/monitoring
- Resource sharing between containers or hosts is complex
- The docker hub is limited to a free user, can only have one private image
- The dependencies and special steps in the build process are now 100% documented and fully reproducible.
- Deployments are easy and the same deployment can be used by any team that deploys Docker containers.
- Docker takes out the super complex process required when setting up a new infrastructure. Once everything is ready, deploying everything towards production is vastly simple and streamlined.
Docker is absolutely amazing when it comes to QA environments and setting up developers with the environment they need. For those that are getting started, Kitematic is an amazing interface to use with Docker. We have multiple instances of databases alongside Docker and it's amazing to be able to sandbox these environments.