A container is a package of software files that hold everything you need to run an application, including the application’s code, dependencies, runtime, library, and more.
Containers help transform operations from physical, single-tenant computing resources to a more efficient, virtual, multitenant infrastructure. The container framework, popularized by Docker, simplifies and accelerates application deployment by packaging operating system components, applications, and all dependencies into layers within what’s known as a container image. More simply, a container image is an unchangeable software package that contains everything an application needs in order to run.
Developers are increasingly using containers as they
- Better align with today’s cloud-native application development approach
- Ensure that applications run the same way regardless of the environment they're running in
- Enable a microservice approach, which makes rapid app development and deployment more feasible