程序是一个静态的概念,比如我们说要安装一个图片处理APP,其实是将一堆指令和资源写在电脑的硬盘上;当我们运行程序时,我们看到了界面,我们在界面上点来点去,界面不断给出反馈,这时,我们得到了一个进程。进程是动态的,有创建、运行、暂停、终止等状态,在运行的时候我们可以与之交互。
镜像与容器的关系,类似于程序和进程的关系。
如果你学过 Python,那应该知道有一个 pip 的工具,它可以根据我们的指令从 https://pypi.org/ 下载指定的包。
如果你用过 maven,应该知道我们在 pom.xml 写好依赖后,maven 会帮我们从 maven 仓库中下载对应的jar包到本地。这个maven仓库可以是中心仓库,也可以是公司搭建的私有仓库。
如果你用过 npm,在 package.json 中写好依赖,使用 npm install 时,会将依赖从 npm 仓库中下载到本地。
Docker 中的仓库,和 pip、maven、npm 中的仓库类似,它是用来存放 Docker 镜像的。