利用OpenShift的ImageStream部署临时版本

公司是港企,项目都部署在OpenShift上统一管理,因为运行环境为香港网络(外网),配置、中间件等大陆无法直接访问联通。因此在大陆开发时,测试是个很大的问题。为了避免往Git上频繁提交未确定可用的版本,选择用利用OpenShift的ImageStream来部署和测试未完成的临时版本。
在这里插入图片描述

①首先需要安装OpenShift的命令行客户端oc

直接下载解压oc.exe,配置好环境变量就行。

②登录

先登上OpenShift获取登录指令:
在这里插入图片描述
他会让你再次登录,登录后直接点击显示token
在这里插入图片描述
复制这个oc指令,回到oc客户端执行登录
在这里插入图片描述
登录完就可以关掉客户端了。

③在maven中配置OpenShift

在pom.xml中配置好OpenShift的相关参数和插件

        <profile>
            <id>dev-ocp4</id>
            <properties>
            </properties>
            <build>
                <plugins>
                    <plugin>
                        <groupId>org.springframework.boot</groupId>
                        <artifactId>spring-boot-maven-plugin</artifactId>
                        <configuration>
                            <excludes>
                                <exclude>
                                    <groupId>org.projectlombok</groupId>
                                    <artifactId>lombok</artifactId>
                                </exclude>
                            </excludes>
                        </configuration>
                    </plugin>
                    <plugin>
                        <groupId>org.eclipse.jkube</groupId>
                        <artifactId>openshift-maven-plugin</artifactId>
                        <configuration>
                            <access>
                                <namespace>dmg-sit</namespace>
                                <masterUrl>https://api.ocp.xxxx.com:6443</masterUrl>
                                <apiVersion>v1</apiVersion>
                            </access>
                        </configuration>
                    </plugin>
                </plugins>
            </build>
        </profile>

比如这里配置的id是dev-ocp4,OpenShift的命名空间是dmg-sit,url是https://api.ocp.xxxx.com:6443等等。

④修改版本信息

比如原本的版本名是1.2.1-SNAPSHOT

    <groupId>com.xxx.dmg</groupId>
    <artifactId>dmg-xxx-api</artifactId>
    <version>1.2.1-SNAPSHOT</version>
    <name>dmg-courier-admin-api</name>
    <description>DM2.0 API xxx Portal</description>

改成临时版本名1.2.1-ECHOO-TEST

    <groupId>com.xxx.dmg</groupId>
    <artifactId>dmg-xxx-api</artifactId>
    <version>1.2.1-ECHOO-TEST</version>
    <name>dmg-courier-admin-api</name>
    <description>DM2.0 API xxx Portal</description>

⑤把版本推上OpenShift的镜像流中

直接在Terminal执行maven的build指令,注意指定配置的id,这里是dev-ocp4,oc:build是把构建好的项目以镜像的形式推上OpenShift。

mvn -DskipTests -P dev-ocp4 clean package oc:build

在这里插入图片描述
在这里插入图片描述

⑥查看镜像有没有成功推上

在这里插入图片描述
找到项目,点进去看tag有没有刚才推的临时版本
在这里插入图片描述

⑦切换部署版本

在这里插入图片描述
切换为临时版本(tag)
在这里插入图片描述
保存即可,因为配置了CI/CD,容器会自动部署。
在成功部署之前,不会kill掉原有的那个服务,保持高可用。
在这里插入图片描述

⑧敲定版本,提交git

当部署测试后没问题,那么就可以把项目的版本改回来,然后推上git。
最后记得把容器的部署版本设置回去。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值