What a software container packages and isolates
A software container runs an application with a defined filesystem and dependencies while using operating-system isolation features. Ordinary containers share the host's kernel rather than each running a separate kernel. They can make environments more consistent, but they do not remove every difference between computers.
Go deeper
A controlled environment around an application
A container image packages application files and required user-space components. Running it creates processes with controlled views of resources such as files, networking and process identifiers.
On a typical Linux container host, containers share the host kernel. This differs from a full virtual machine, which ordinarily runs its own operating-system kernel on virtualised hardware.
Packaging improves consistency without making the environment independent of everything underneath. Processor architecture, kernel capabilities, configuration and external services still matter.
- The image supplies a defined collection of files.
- Isolation limits how processes see and use host resources.
- Runtime settings connect the application to storage and networks.
A container is also not an absolute security boundary. Its protection depends on configuration, privileges and the underlying system, so sharing a kernel remains an important part of the model.