OpenShift V3:了解 Docker 的过程

OpenShift V3: understanding the process with Docker

我正在尝试了解 OpenShift V3。我读了很多关于它的书,我知道最重要的术语,但整个流程仍然有点不清楚。 所以我在 Docker 容器中安装了 OpenShift V3。 是时候开始流程了:

1) 首先,他们正在进行 docker 注册。为什么以及每次都必须这样做?

然后我在其中创建了一个项目和一个应用程序。在我看到的大多数教程中,他们都是这样做的:

mkdir -p examples/app
$ wget \
https://raw.githubusercontent.com/openshift/.../template-stibuild.json \
$ oc new-app application-template-stibuild.json

2) 所以这是当你使用模板创建你的应用程序时,你必须每次都做一个 'wget'?在很多教程中,他们会立即开始:

oc create -f \
    /usr/share/openshift/.../name.json \
    -n openshift

3) oc new-appoc create -f 有什么区别...

4) 为什么必须从 Docker Hub 拉取镜像?它在做什么? 我主要是从 github 获取一个 .json 文件来开始(模板)。这个 json 正在拉取图像。

5) 什么是图像流?

6) 什么是镜像注册表?

当您 运行 容器内的 OpenShift 时,它是自包含的,因此如果您删除容器,描述注册表的元数据就会丢失。您只需为给定集群安装一次注册表。

new-app 模板的 wget 参数是因为 new-app 将源代码 URL 作为参数,所以我们无法区分 Git 存储库和模板。

Create 是一个用于创建单个对象的命令,而 new-app 接受源和 Docker 图像等输入并找出您需要的 API 个对象,然后创建它们。

您不必从集线器或私有 Docker 注册表中提取图像。 OpenShift 有图像流,类似于虚拟 Docker 存储库,您可以在它们之间轻松移动图像。图像流标签就像 git 中的分支,它们可以指向集成注册表中的图像或 OpenShift 之外的图像。 new-app 使用来自 Docker Hub 的图像描述(它使用什么端口,它有什么标签)来生成应用程序的其余部分。

当您推送 docker 图像时,您推送到的位置称为图像存储库 (foo/bar),它位于图像注册表(Docker 集线器或私人注册表)。