jenkins如何打包并部署镜像到rancher

这篇文章我将带领大家进入一家新的领域,如何利用jenkins发布镜像到rancher里面

一.安装插件

登陆jenkins在插件管理器里搜索rancher安装rancher插件

二.添加rancher构建

 

这里其实我们也可以通过如下命令直接推送到镜像服务上。

mvn clean package docker:build -DpushImage

但是考虑的网络较慢,我们直接使用插件,内部直接访问rancher 会快很多

 

三.配置rancher信息

 

API Endpoint 在rancher这里可以找到

 

rancher API Key :

username为第一步获取的Access Key

password为第一步获取的Secret Key

id和Description不重要可以随意填

Rancher Environment Id:环境id,可以在rancher管理界面环境管理中获取

Service Name:格式为基础设施名称/服务名称,下图就是基础设施名称

点击进去就是各个服务名称

Docker Image:容器名称,可以使用jenkins变量做动态构建

至此,jenkins上构建完就可以调用rancher api进行容器发布和升级。

 

四.验证部署是否成功

查看jenkins控制台日志

登陆rancher 查看服务日志顺利升级完成

 

五.备注问题列表

问题一:

maven 安装不上docker插件,运行 提示:docker:bulid时No plugin found for prefix 'docker'

解决方案:

原因是maven不能识别 docker-maven-plugin 需要再setting.xml 的pluginGroups标签处中加上

<pluginGroup>com.spotify</pluginGroup>

如下,reimport就可以了

<pluginGroups>
            <pluginGroup>com.spotify</pluginGroup>        
</pluginGroups>

 

我的pom.xml引入docker插件的地方如下:

<groupId>com.spotify</groupId>
<artifactId>docker-maven-plugin</artifactId>
<version>1.0.0</version>

 

问题二:

o {}->unix://localhost:80: No such file or directory
Apr 06, 2020 11:07:51 AM org.apache.http.impl.execchain.RetryExec execute

解决方案:

1. 打开docker的远程api访问(参考:https://blog.csdn.net/csde12/article/details/70240721)

 
sudo vi /etc/systemd/system/docker.service
ExecStart=/usr/bin/dockerd -H tcp://0.0.0.0:2375 -H unix:///var/run/docker.sock

 

2. 重启守护进程

    sudo systemctl daemon-reload
    sudo systemctl restart docker

3. Jenkins的全局变量中增加DOCKER_HOST=tcp://localhost:2375

问题三


org.apache.http.conn.UnsupportedSchemeException) caught when processing request to {}->tcp://192.168.218.24:2375: tcp protocol is not suppo…

解决方案:

<dockerHost>${docker.repository.host}</dockerHost>

tcp改成http协议就可以

 

目前100000+人已关注加入我们

       

       

  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 3
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值