Containers are a virtual environment, like running multiple virtual machines on a single physical host, or multiple containers on a single physical/virtual host. Example: Docker
Containers are managed through a container orchestrator, which can start, stop, and scale-out application instances as needed.
used to deploy and manage containers.
portability, performance, lightweight
Containers vs Virtual Machines
Container
VM
Isolation
Strong Isolation
Portable
Portable
Efficient
Resource Hungry
Fast Start
OS Boot Times
Disposable
Require Patching
Minimal Attack Surface Area
OS needs Hardening
What is a microservice?
Containers are often used to create solutions by using a microservice architecture. This architecture splits the solutions into smaller, independent pieces.