Jenkins部署net core小记

  1. 云栖社区>
  2. 博客>
  3. 正文

Jenkins部署net core小记

sunshine.pl 2018-08-31 15:38:00 浏览1233

    作为一个不熟悉linux命令的neter,在centos下玩Jenkins真的是一种折磨啊,但是痛并快乐着,最后还是把demo部署成功!写这篇文章是为了记录一下这次部署的流程,和心得体会。

    网上很多资料都不适合自己,netcore的博文少之又少,很多都是Jenkins部署java,说起这个就是痛啊,由于网上资料松散,准备买书看的,但是讲Jenkins的,实战都是java项目,我泱泱netcore感觉真的尚未成长起来哇。

    但是终究被我找到一个适合的文章入门,这篇:https://www.cnblogs.com/chuancheng/p/8933057.html

    参照这篇往下进行配置,按照文章中的描述,基本无大问题,作者很良心了,一些坑都有提到,我这里只补充一个,就是dockerfile里面的代码, 里面的Jessie源,用的是腾讯云的,说如果是阿里主机则要改成阿里云的源,啊,天哪,我真不知道这个源要怎么改,(*/ω\*) 对于这种首次玩的东西,不一字一句写出来我就真的可能卡在这里。然后网上搜了一下阿里云的Jessie源。。。看得模模糊糊,嗯,是不是链接中间的域名换一下就OK?

    于是乎,这个里面的https://mirrors.163.com,我就“心机的”手动改成https://mirrors.aliyun.com,其他的不变,果然好使!

FROM jenkins

USER root
#清除了基础镜像设置的源,切换成腾讯云的jessie源
#使用非腾讯云环境的需要将 tencentyun 改为 aliyun
RUN echo '' > /etc/apt/sources.list.d/jessie-backports.list \
  && echo "deb http://mirrors.163.com/debian jessie main contrib non-free" > /etc/apt/sources.list \
  && echo "deb http://mirrors.163.com/debian jessie-updates main contrib non-free" >> /etc/apt/sources.list \
  && echo "deb http://mirrors.163.com/debian-security jessie/updates main contrib non-free" >> /etc/apt/sources.list
#更新源并安装缺少的包
RUN apt-get update && apt-get install -y libltdl7 && apt-get update

ARG dockerGid=999

RUN echo "docker:x:${dockerGid}:jenkins" >> /etc/group 

# 安装 docker-compose 因为等下构建环境的需要
RUN curl -L https://github.com/docker/compose/releases/download/1.16.1/docker-compose-`uname -s`-`uname -m` -o /usr/local/bin/docker-compose

RUN chmod +x /usr/local/bin/docker-compose

 

    修改了源以后 docker build . -t auto-jenkins 就能执行成功了,这里再提一下另外的一个坑,vim dockerfile以后,我从txt复制代码到Xshell的窗口里时,第一行明明是FROM jenkins,结果FRO三个字没了,变成M jenkins,啊醉啦,一开始执行 docker build . -t auto-jenkins 报错时,看到一句错误提示,心想完了, 命令都看不懂,这报个错可咋整.... 然后就搁了一会儿, 网上摸了一下鱼。不行,今天的学习目标是学会这个,不能半途而废,隔了十多分钟再次编辑dockerfile的时候,终于发现上面复制过去的时候少了,就手动加上去,再执行命令的时候就冗长许多了。

    

# docker run --name jenkins -p 8080:8080 -p 50000:50000 \
    -v /var/run/docker.sock:/var/run/docker.sock \
    -v $(which docker):/bin/docker \
    -v /var/jenkins_home :/var/jenkins_home \
    -d auto-jenkins

    执行这个的时候,也是遇到一个问题,容器ID重复(换做以前我肯定是看不懂错误提示的,英语硬伤+对linux的恐惧),这次我看懂了,它提示我要删除一下,于是百度了一下docker怎么删除容器,嗯,执行一下,OK ,问题解决, 一路往下通关~

    


    博文里提到的文件夹权限我没遇到,如果有人遇到了,参照博文里给的方法应该就可以解决了,我写这篇文章,更多的像是读后感,哦,不,操后感,实操以后的感想,和感谢!

    说一下情况吧,之所以小记一下,是觉得我这个neter,其实也是个loser,体现在以下几点:

    1.对linux命令不熟

    2.英语水平低(说白了大学里考30分那种)

    3. 浮躁 

    这也是为啥到现在才只会堪堪部署一个demo的原因,实在是底子薄...... 不过没关系,对linux不熟,就多手敲,少复制,这次用Jenkins部署core,能手敲的基本都没复制粘贴了,对命令熟悉了一分。 

    关于英语,最近有刻意练习了,搜狗浏览器右键可以快速翻译,遇到不懂的词就翻译一下,如果是句子我就扔百度翻译了,最近看英文都是这么干,用三脚猫的水平试着阅读一下,不行就关键词右键一下,再不行就整句百度翻译里一扔,终极必杀技:整个网页翻译一下...............也不是要一定都记着,多练,久而久之有些词,有些句子,就记住了。

    关于浮躁,这是个我思考了很久的问题,自我入这行起,就有个人说过我浮躁,后来我才搞懂为什么:能力与野心不匹配,过于年轻,就会浮躁。

    哈哈,说起这些,感觉自己就是个野生程序员,没人教没人带,全靠自己学,自己问,偶尔划水摸鱼去了,也没人管,如鱼饮水,冷暖自知啊~  应该有很多人这样吧,不得不说,那些有师傅带的真让人羡慕。(同是勤学,有师傅带的绝对比没师傅带的强,不接受反驳,事实就是如此,大家都勤学,有人带积累知识的速度就更快,没办法,我命不好,不过也不自怨自艾,顺其自然吧)

    


    参照上面链接里的教程部署demo的小白有不懂的可以一起交流交流,大佬就别找我 (*/ω\*)  对了, 文章里给的git项目地址,有个重定向,所以在Jenkins里配置的时候用重定向以后的地址,这个:https://gitee.com/wenalu/MvcTest