容器就是一个软件包,该软件包提供应用程序的完整的运行时环境。包括:应用程序的代码相关配置文件、库以及运行应用程序所需的依赖项等。
容器化是一种应用程序或系统分发方法,它将应用程序或系统及其依赖项与底层基础设施隔离开来。它是一种操作系统级虚拟化,允许用户在容器中部署和运行分布式应用程序或系统而无需为每个应用程序启动整个虚拟机。
容器的一个非常重要的作用: 保证代码运行环境的一致性。
应用程序移动到其他环境就无法正确运行,这个问题从有软件开发就存在了。会出现这种问题,通常是由于代码运行环境不一致导致的,比如系统库不一样等等。容器通过为应用程序打包和部署提供轻量级、不可变的基础结构来解决此问题。把应用程序或服务、其依赖项及其配置打包为容器映像。容器化应用程序可以作为一个单元进行测试,并作为容器映像实例部署到主机操作系统。
这样,开发人员和IT 专业人员利用容器,只需进行少量修改,甚至不需要进行任何修改,即可跨环境部署应用程序。