Openshift E03 谈谈S2I

关于OpenShift,至今为止还没有梳理核心组件和概念上的解释,但似乎并不太妨碍初步的简单使用。而 Source to Image(S2I) 是OpenShift 的一个重要功能,也是其的一大特色。

What

第一:从OpenShift的角度来看

Source to Image(S2I) 是OopenShift中应用容器化的 标准流程

第二: 从自身工具的属性来看

Source-to-Image (S2I) 是一种用于构建可重复生成的 Docker 格式容器镜像的工具。

How

S2I 需要的最基本的输入只有两个: 一个是源代码仓库(Source Code);另一个是Builder Image(也称“构建镜像、Builder镜像”、基础镜像、构建器)

从应用的源代码构建并部署,Openshift通过一个S2I的构建过程编译打包并实现发布,具体可以参考这篇文章

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
# install s2i tool on MacOS
brew install source-to-image

# s2i create <image name> <destination directory>
s2i create s2i-tomcat s2i-tomcat

# get dir ,file
➜ s2i-tomcat tree
.
├── Dockerfile
├── Makefile
├── README.md
├── s2i
│ └── bin
│ ├── assemble
│ ├── run
│ ├── save-artifacts
│ └── usage
└── test
├── run
└── test-app
└── index.html

4 directories, 9 files

S2I tomcat 镜像定制案例,源码可见 https://github.com/cicd-draft/s2i-tomcat

OpenShift的构建

OpenShift支持4种构建方式:Docker构建、S2I构建、Pipeline构建和自定义构建。详情可见官方说明

  • Docker构建会调用docker build命令,基于所提供的Dockerfile文件和所提供的内容来构建Docker镜像。

  • S2I构建是OpenShift的原创,它根据指定的构建镜像(Builder Image)和源代码(Source Code),构建生成可部署Docker镜像,并推送到OpenShift内部集成镜像库中。

  • Pipeline构建方式允许开发者定义Jenkins Pipeline。在项目首次使用该构建方式时,OpenShift容器云平台会启动一个Jenkins服务,然后再将该Pipeline交由它来执行,并负责启动、监控和管理该构建。BuildConfig对象中可以直接包含Jenkins Pipeline的内容,或者包含其Git仓库地址。


Donate
  • Copyright: Copyright is owned by the author. For commercial reprints, please contact the author for authorization. For non-commercial reprints, please indicate the source.
  • Copyrights © 2019-2024 John Doe
  • Visitors: | Views:

请我喝杯咖啡吧~