您的位置:网站首页 > asp源码 > 正文

猿学-k8s+Jenkins+GitLab-自动化部署

类别:asp源码 日期:2018-11-3 2:02:35 人气: 来源:

  现在基本上是隔几天写一篇文章,还是不够勤奋,努力把自己打造成勤奋的人,把工作所用到的技术点分享给大家。为了研究k8s自动化部署aspnet core项目,足足花费了我一个礼拜的时间,过程是痛苦的,但结果是美好的。

  1、先上一下手绘导图,大致的流程图如下:(不喜勿喷呀)大致的部署流程是这样的:开发人员把做好的asp.net core项目代码通过git推送到gitlab,然后Jenkins通过 gitlab webhook (前提是配置好),自动从拉取gitlab拉取代码下来,然后进行build,编译、生成镜像、然后把镜像推送到Harbor仓库;然后在部署的时候通过k8s拉取Harbor的代码进行创建容器和服务,最终发布完成,然后可以用外网访问。(ps:看着我讲这么简单,但心里有许多小鹿在心里乱撞,没关系,下面将会好好的分享给大家)

  2、先介绍一下我的服务器IP和在各个服务器所安装的内容ps:由于我的电脑配置有限,运行太多的虚拟机会导致内存空间不够用,因此就弄了三台,已经是极限了。

  如果大家对于k8s怎么部署,请看我之前的文章有介绍。前提是要安装好docker、gitlab等

  第三步:此处应该设置自签证书的,即访问的时候是采用HTTPS进行访问的。此处略去,不影响我们接下去的部署。(后期会出一篇关于自签证书的文章,仅供参考)第四步:将下载好的Harbor二进制包上传到服务器,然后解压出来解压的命令为: tar xzvf 包名

  进入到里面后,我先在用户管理中创建了一个用户 louie 。大家自行创建,为了后期需要把一些依赖镜像先推送到harbor仓库中。然后在项目中创建项目,如下:

  操作服务器:node1说明:jenkins-slave 主要是为了分担jenkins-master的压力。如下图所示:(在多任务运行的时候可以采用)

  Dockerfile 文件内容如下(如需源文件可加入QQ群获取),如下图所示:可以看到 jenkins-slave需要依赖java的一些。

  2、配置java的基础。配置 JDK和maven,把下载的二进制包放到如下目录(由于文件太大,可移步到群中下载)

  执行后发现及时输入账号和密码也无法登录,由于在node1中没有添加harbor仓库的IP地址导致无法登录,因此

  执行 docker info ,看一下IP地址是否生效,发现已加入。好了,在试一下登录,发现登录成功,然后开始推送把。

  5、要想把jenkins关联到k8s中需要安装几个插件打开 “系统管理” =》“管理插件” 然后安装

  6、安装完毕后就开始构建项目啦。我新建一个项目,然后选择 流水线、创建完任务后先不进行配置,我们先要设置一下jenkins挂钩k8s的点击 “系统管理”=》“系统设置”。一直往下滑动,点击“新增一个云”,选择k8s,如果这边没有出现k8s,则代表你的插件没有安装成功,请重新安装吧。

  然后配置一下里面的内容,只要配置这两个地方就可以了。针对URL,我这边是采用kube-dns来做服务发现,不需要实际的ip地址进行输入。至此搞定。不过还得配置一下 “凭证”,即SSH密钥,方便可以从gitlab那边拉取代码,有玩过gitlab应该知道,拉取代码分为git和http。

  8、添加凭证在这里我添加了两个凭证,一个是ssh,和k8s的凭证。这个可自行添加一下即可。root中的密钥时私钥,并且在服务器上需要把公钥配置到gitlab上。

  这下面是gitlab 配置ssh, ssh的私钥和公钥,直接在 node服务器上生成一下即可 ssh-keygen, 然后把里面的内容复制出来即可。

  1、进入testproject里面配置。按照以下图配置完后即可。然后点击保存。这样就完成了任务配置,接下来就是要配置一下gitlab啦

  将创建好的webhook 进行测试,gitlab会模拟代码推送事件,返回200就代表成功啦。

  在这里我创建了一个asp.net core webapi 的项目,不做任何修改。然后在项目中加入了这几个部署文件。deploy文件里面包含 Jenkinsfile 和deploy.yml(用来部署项目镜像的)

  dockerfile 内容,当然里面的sdk我已经打包好了,已经上传到我的harbor仓库中。

  房峰辉 四中全会

关键词:asp登录源代码
0
0
0
0
0
0
0
0
下一篇:没有资料

相关阅读

网友评论 ()条 查看

姓名: 验证码: 看不清楚,换一个

推荐文章更多

热门图文更多

最新文章更多

关于联系我们 - 广告服务 - 友情链接 - 网站地图 - 版权声明 - 人才招聘 - 帮助

CopyRight 2002-2012 技术支持 源码吧 FXT All Rights Reserved

赞助合作: