博客地址
笔记内容均来自于 docker 官方文档。
简而言之,容器就是本地计算机中的一个沙盒进程,它与本地其他进程相隔离。这种隔离利用了 linux中存在已久的namespaces和cgroups功能。docker使这些功能平易近人。总之一个容器拥有以下属性:
是可运行的映像实例。你可以使用 dockerAPI 或者 CLI 创建、运行、移动或者删除一个容器。可移植性。容器可以移植到任何操作系统。它可以在本地计算机、虚拟机运行,同时也可以部署到云。独立性。容器之间彼此隔离,运行自己的软件、二进制文件以及配置。 什么是容器映像
当一个容器运行时,它将使用一套独立(isolated)的文件系统。这个自定义的文件系统就由一个容器映像提供。由于镜像包含了容器的文件系统,它必须包含运行应用程序所需要的一切-- 所有的依赖关系、配置、脚本、二进制文件等等。镜像还包含了容器的其他配置,如环境变量、运行的默认命令和其他元数据。
什么是分离模式当我们使用 docker run 运行容器时,如果使用了 -d 模式
docker run -d -p 80:80 docker/getting-started
那么我们将以 分离模式 运行容器。
分离模式下启动 docker 容器,该容器会作为一个隔离的进程在后台运行,此时你本地计算机的控制台和容器并不直接相连,可以使用其他命令。
如果在使用 docker run 运行容器时,没有使用 -d ,那么容器将默认以 前台模式 运行。
前台模式下启动 docker 容器。你用来执行 docker run 的控制台将被连接至显示容器的标准输入、输出和错误。这意味着你可以该控制台与容器的进程相连。
在分离模式下,你可以用docker logs -f