分享好友 最新动态首页 最新动态分类 切换频道
Docker学习笔记五:Docker生成jenkins容器,支持Java Web项目持续集成、持续部署
2024-12-27 02:59

1.拉取jeknin镜像

Docker学习笔记五:Docker生成jenkins容器,支持Java Web项目持续集成、持续部署

sudo docker pull jenkins

2.创建一个jenkins目录

sudo mkdir /jenkins

3.在jenkins目录下创建一个Dockerfile

sudo touch Dockerfile

4.为了在jenkins容器中具有执行sudo命令的权限,在Dockerfile添加如下内容:

FROM jenkins
USER root
RUN apt-get update && apt-get install -y sudo && rm -rf /var/lib/apt/lists/*
RUN echo "jenkins ALL=NOPASSWD: ALL" >> /etc/sudoers
USER jenkins


5.创建新的jenkins镜像

sudo docker build -t zss/jenkins:1.0 .

6.创建jenkins容器

sudo docker run -p 8080:8080 --name jenkins     

-v /usr/bin/docker:/usr/bin/docker                                         

-v /var/run/docker.sock:/var/run/docker.sock                                              //将宿主机中docker挂载到jenkins容器中,以便在jenkins容器中执行docker命令

-v /usr/jdk/jdk1.7.0_25:/usr/java/jdk1.7.0_25                                            //将宿主机中jdk挂载到jenkins容器中

-v /usr/tomcat/apache-tomcat-7.0.29:/usr/tomcat/apache-tomcat-7.0.29     //将宿主机中tomcat挂载到jenkins容器中

-v /usr/maven/apache-maven-3.3.9:/usr/maven/apache-maven-3.3.9           //将宿主机中tomcat挂载到jenkins容器中

zss/jenkins:1.0

7.在浏览器中输入http://localhost:8080,填写启动jenkins时出现的密码

1.安装svn、maven插件

 

 2.在jenkins中配置jdk、maven如图:

 

1.创建一个maven风格的test项目

2.配置test

 

1.在Post Steps目录中选择

填写如下Shell脚本

#!/bin/bash
  imageId=`sudo docker images|grep -i test|awk '{print $3}'`
  echo "Test镜像ID = "$imageId
  containId=`sudo docker ps -a |grep -i test|awk '{print $1}'`
  echo "Test容器ID = "$containId
  project=/var/jenkins_home/workspace/test/src/main/resources/docker
#判断是否存在旧的Test镜像
  if test -z "$imageId"
  then
     echo "Test镜像不存在"
  else
     if test -z "$containId"
     then
         echo "Test容器不存在"
     else
         echo "Test容器将要被执行stop命令"
         sudo docker stop test
         echo "Test容器处于stop状态"
     fi
     echo "旧Test镜像将要被删除"
     sudo docker rmi -f $imageId
     echo "成功删除旧Test镜像"
  fi
#Dockerfile所在目录
  sudo mv $project/Dockerfile /usr
#切换目录至usr
  cd /usr
#将Tms war包拷贝到Dockerfile所在目录下
  sudo mv /var/jenkins_home/workspace/test/target/test.war .
  echo "Test镜像构建中:------->"
#构建Tms镜像
  sudo docker build -t test .
#判断是否存在旧的Tms容器
  if test -z "$containId"
  then
    echo "Test容器不存在"
  else
    echo "旧Test容器将要被删除"
    sudo docker rm -f $containId
    echo "成功删除旧Test容器"
  fi
#创建容器
  echo "开始创建新Test容器"
  sudo docker run -d -p 8088:8080 -v /usr/logs:/usr/tomcat/logs --name test test
  echo "新Test容器创建成功"

2.点击立即保存,立即构建

最新文章
班级优化大师APP
班级优化大师专为中小学教师打造。现已获全国超200万教师的喜爱和肯定,成为新时代下教师开展学生评价、家校沟通、课堂互动等教学活动的主流选择!1、管理班级更高效,还能和家长随时沟通2、随时发送重要通知给各位家长3、家长的不同想法,
浙版传媒:探索推动AI技术在选题策划、精准营销等领域的应用|直击业绩会
①公司将积极探索并推动AI技术在选题策划、辅助文字、绘画创作、精准营销等领域的应用。②全年线上业务营收31.55亿元,同比增长17.15%。③今年继续通过设立数字产业基金方式,持续跟踪储备未来可进一步参股或收并购的优质项目。财联社5月25
谷歌搜索引擎怎么搜客户
在谷歌搜索引擎中寻找客户,可以采取以下几种方法:1. 关键词搜索: - 根据您的业务类型和目标客户,使用相关的关键词进行搜索。例如,如果您经营的是一家咖啡店,可以搜索“咖啡爱好者”或者“附近咖啡馆推荐”。2. 使用社交媒体: - 在谷
WWE系列游戏推荐:2021年度最具娱乐性的摔跤游戏大盘点!
WWE游戏:摔跤爱好者的必玩之选WWE(世界摔跤娱乐)一直是摔跤游戏的代表品牌,每年都会推出新作,带给玩家最具冲击力和娱乐性的摔跤体验。对于喜欢这类游戏的玩家来说,了解最新的WWE游戏排名以及玩法特点至关重要。2021年,随着游戏技术
微信小程序API 获取小程序页面二维码
参数类型默认值说明sceneString最大32个可见字符,只支持数字,大小写英文以及部分特殊字符,其它字符需要自行编码处理(因不支持%,中文无法使用urlencode处理,请使用其他编码方式)pageString必须是已经发布的小程序页面,例如"pages/in
精选个性说说,2017年最新潮流短语
本文为你精选了最新的个性说说,涵盖了生活、情感、态度等多个方面。这些说说展现了现代人的独特个性和真实心声,语言简洁明了,充满个性魅力。它们反映了现代人的生活状态和价值观,同时也表达了对未来的期待和追求。这些个性说说充满了正
贝力菲热水器全国400服务热线《今日汇总》
1、排水管不通畅或排水泵堵转;2、电脑板坏;3、排水泵与电脑板接触不良或排水泵坏;4、查排水管是否弯折或高度过高,如不是,打开滤门,检查过滤器是否堵塞;5、若过滤器没有堵塞,检查排水管是否能排水;6、排水管不能滚筒上排水的洗衣机故
震惊!用AI一键生成完美美女写真,真的太简单了!
限时免费,点击体验最近超火的AI生图神器,坐拥3000美女的大男主就是你! https://ai.sohu.com/pc/generate/textToImg?_trans_=030001_yljdaimn 在这个科技不断进步的时代,我们已经不再满足于传统的照片编辑和生成。而如今,AI技术的发展
qq怎么邀人进群
QQ作为一款广受欢迎的即时通讯软件,不仅提供了便捷的聊天功能,还允许用户创建和管理群聊,方便多人之间的交流和互动。那么,如何在QQ中邀请好友加入群聊呢?以下是详细的步骤介绍。### 一、通过手机QQ邀请1. **登录QQ**:首先,确保你已
零基础轻松入门,主流网站搭建教程,打造专属个性化网站
本教程涵盖主流网站搭建方法,助您轻松入门,快速打造独具特色的个性化网站。从基础到进阶,涵盖域名注册、空间选择、网站设计等实用技巧,让您轻松掌握网站搭建全过程。挑选合适的网站搭建平台网站搭建实战教程其他平台搭建指南在互联网迅
相关文章
推荐文章
发表评论
0评