官术网_书友最值得收藏!

What is a container?

Containers are a type of operating system virtualization, much like the virtual machines that preceded them. There's also lesser known types of virtualization such as Application Virtualization, Network Virtualization, and Storage Virtualization. While these technologies have been around since the 1960s, Docker's encapsulation of the container paradigm represents a modern implementation of resource isolation that utilizes built-in Linux kernel features such as chroot, control groups (cgroups), UnionFS, and namespaces to fully isolated resource control at the process level.

Containers use these technologies to create lightweight images that act as a standalone, fully encapsulated piece of software that carries everything it needs inside the box. This can include application binaries, any system tools or libraries, environment-based configuration, and runtime. This special property of isolation is very important, as it allows developers and operators to leverage the all-in-one nature of a container to run without issue, regardless of the environment it's run on. This includes developer laptops and any kind of pre-production or production environment.

This decoupling of application packaging mechanism from the environment on which it runs is a powerful concept that provides a clear separation of concerns between engineering teams. This allows developers to focus on building the core business capabilities into their application code and managing their own dependencies, while operators can streamline the continuous integration, promotion, and deployment of said applications without having to worry about their configuration.

At the core of container technology are three key concepts:

  • cgroups
  • Namespaces
  • Union filesystems
主站蜘蛛池模板: 栾川县| 抚州市| 徐汇区| 高清| 年辖:市辖区| 通许县| 祁连县| 沙湾县| 新余市| 银川市| 林西县| 东阿县| 鹤岗市| 绥芬河市| 长顺县| 湟中县| 玉门市| 鄯善县| 高淳县| 涪陵区| 泗洪县| 抚顺市| 苍溪县| 连州市| 历史| 闽清县| 泰和县| 汉川市| 福贡县| 游戏| 东明县| 北海市| 盐津县| 北川| 济宁市| 巴中市| 绥江县| 九龙城区| 乌拉特中旗| 郑州市| 南涧|