zrong 发表于 2018-1-7 16:55:27

docker+jenkins的实现方式(ps.使用dockerfile的方式)!

  继http://www.cnblogs.com/guilty/p/4747993.html之后。
  前两天朋友问的,docker+jenkins整合。
  我也没搞过,但是正好最近有空,我也很有兴趣,就搞一下。
  docker是什么,以及如何安装,我这里不做解释,只介绍一些我踩过的坑。
  首先说docker,我用的是centos7的镜像,里面连wget都没有,网上资料也很少,坑也是自己慢慢踩过来。
  先说路由表,我用的是阿里云,安装完docker,命令会报错,经查找需要改路由表
  

sudo route del -net 172.16.0.0 netmask 255.240.0.0  

  由于我对linux也不是很熟,我只知道他需要启动一些进程,例如提示你docker -d,你可以输入docker -d看看。
  然后docker images,如图下
https://images0.cnblogs.com/blog2015/626894/201508/261413398129555.png
  这个镜像pull下来之后,没有改动,就基于这个构建。
  构建方式首选Dockerfile,他的方便性还是不错的。
  新建一个文件,这里用
  

touch Dockerfile  vi Dockerfile
  

  下面是我写的Dockerfile,你可以直接复制进去
  

FROM centos:7  

  
MAINTAINER yuxh yuxh19901014@
163.com  

  
RUN curl
-o /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo  
RUN sed -i.bak 's#aliyun\.com#aliyuncs.com#' /etc/yum.repos.d/CentOS-Base.repo
  
RUN yum install wget -y
  
RUN wget --no-check-certificate --no-cookies --header "Cookie: oraclelicense=accept-securebackup-cookie" http://download.oracle.com/otn-pub/java/jdk/7u79-b15/jdk-7u79-linux-x64.tar.gz
  
RUN wget http://mirrors.aliyuncs.com/apache/tomcat/tomcat-7/v7.0.63/bin/apache-tomcat-7.0.63.tar.gz
  
RUN wget http://mirrors.aliyuncs.com/apache/ant/binaries/apache-ant-1.9.6-bin.tar.gz
  
RUN cd /opt
  
RUN tar -xvf apache-tomcat-7.0.63.tar.gz -C /opt/
  
RUN tar -xvf apache-ant-1.9.6-bin.tar.gz -C /opt/
  
RUN tar -xvf jdk-7u79-linux-x64.tar.gz -C /opt/
  
ENV JAVA_HOME /opt/jdk1.7.0_79
  
ENV ANT_HOME /opt/apache-ant-1.9.6

  
ENV>  
ENV PATH $JAVA_HOME/bin:$ANT_HOME/bin:$PATH
  
RUN wget -P /opt/apache-tomcat-7.0.63/webapps http://mirrors.jenkins-ci.org/war/latest/jenkins.war
  
RUN yum install git -y
  
CMD /opt/apache-tomcat-7.0.63/bin/catalina.sh run
  
# expose memcached port
  
EXPOSE 8080
  

  第一行,是基于哪个镜像,我刚刚说过,第三行只是联系方式。
  下面就是修改和增加一些开发环境,这里多亏有运维的朋友帮忙,要不然我真搞不定。
  上面有一行关于jdk的下载,那个是需要跳过oracle验证,由于直接下载不下来,这里是百度找到的方法。
  下面使用了ENV 来配置环境变量
  CMD是构建之后,执行的命令,这里启动tomcat
  EXPOSE 8080 这里是tomcat需要的端口。
  这些写完之后保存,然后执行如下命令构建
  

docker build -t jenkins/centos:v1 .  

  其中-t jenkins/centos给镜像命名,v1是标签,后面有个.,意思是从当前目录查找Dockerfile
  构建过程是很慢的,请耐心等待。。。。。
  成功后,使用如下命令运行镜像。
  

docker run -d -p 80:8080 jenkins/centos:v1  

  80:8080意思是,端口映射,把8080映射到80.
  这里如果不报错,输入ip就可以访问了
https://images0.cnblogs.com/blog2015/626894/201508/261423556873343.png
  有什么不会的可以问我,反正我也不怎么会,2333333
页: [1]
查看完整版本: docker+jenkins的实现方式(ps.使用dockerfile的方式)!