Linux使用docker安装Jenkins 并进行jar包发布
拉取镜像
docker pull jenkins/jenkins:lts
创建docker-compose.yml 文件 (主要习惯 也可以不用这种方式) Linux安装docker-compose 参考:https://www.cnblogs.com/pxblog/p/15049362.html
version: "2"
services:
jenkins:
image: jenkins/jenkins:lts
container_name: jenkins
environment:
# - TZ="Asia/Shanghai"
- timezone="Asia/Shanghai"
- JENKINS_JAVA_OPTIONS="-Xms1024m -Xmx2048m -XX:PermSize=256m -XX:MaxPermSize=512m -Duser.timezone=Asia/shanghai -Djava.awt.headless=true"
- JENKINS_OPTS="--prefix=/jenkins"
- JENKINS_ARGS="--prefix=/jenkins"
privileged: true
user: root
volumes:
- /data/jenkins/home:/var/jenkins_home
- /etc/localtime:/etc/localtime
ports:
- 8500:8080
- 50000:50000
restart: on-failure
先创建挂载目录,然后执行
docker-compose up -d
-d :表示后台启动 第一次可以不使用 看下启动是否正常
启动成功
浏览器访问
http://服务器ip:8500/jenkins
然后查看密码 我的是
cat /data/jenkins/home/secrets/initialAdminPassword
安装完成后,这里可以创建,也可以使用默认的admin ,密码就是我们之前/secrets/initialAdminPassword 密钥
配置环境变量
配置环境变量maven 通过把maven包放到挂载目录
添加全局凭据
输入账号密码 id用gitlab
确定之后
开始部署项目
脚本说明
node {
stage('Preparation') {
git branch: 'master', credentialsId: 'gitlab', url: 'http://git.demo.com/gitlab/$JOB_NAME.git'
}
stage('Maven Build') {
sh "mvn -v"
sh "rm -rf /var/maven/repository/com/*"
sh "rm -rf /var/maven/repository/org/*"
sh "rm -rf /var/maven/repository/cn/*"
sh "mvn -Dmaven.test.failure.ignore -DskipTests clean install"
sh "rm -rf /var/maven/repository/com/*"
sh "rm -rf /var/maven/repository/org/*"
sh "rm -rf /var/maven/repository/cn/*"
}
stage('Deploy') {
sh "pwd"
sh "scp ./target/$JOB_NAME-1.0.0.jar root@192.168.1.101:/home/test/$JOB_NAME"
}
def remote = [:]
remote.name = 'master'
remote.host = '192.168.1.102'
remote.user = 'root'
remote.password = '123456'
remote.allowAnyHosts = true
stage('Remote SSH') {
sshCommand remote: remote, command: "sh /home/test/restart.sh"
} }
$JOB_NAME 就是刚才我们填写的任务的名称,我是test,这里Jenkins会自动帮我们替换
/var/maven/repository 这个是我们maven配置的本地仓库路径,每次都会删掉本地仓库的jar包 重新拉取最新的jar包下来打包
配置好了 点击立即构建 就可以查看效果了
Linux使用docker安装Jenkins 并进行jar包发布的更多相关文章
- Docker安装Jenkins打包Maven项目为Docker镜像并运行【保姆级图文教学】
一.前言 Jenkins作为CI.CD的先驱者,虽然现在的风头没有Gitlab强了,但是还是老当益壮,很多中小公司还是使用比较广泛的.最近小编经历了一次Jenkins发包,感觉还不错,所以自己学习了一 ...
- Docker的安装以及使用Docker安装jenkins,gogs,tomcat(一)
(1)Docker的安装 官网安装链接 :https://yeasy.gitbooks.io/docker_practice/content/ 卸载旧版本 旧版本的 Docker 称为 docker ...
- docker 安装jenkins 发布 asp.net core 2.0
安装Docker 其实安装Docker的过程,大家可以到Docker官网找到自己相对应的安装文档进行安装,Docker区分CE和EE的两个版本,具体这两个版本有什么区别,大家自行查阅相关资料,这里不再 ...
- Mac 环境docker 安装jenkins
网上很多的教程是讲的是Linux 上的Docker安装Jenkins,但是我用的是Mac,所以参考之前的前辈写的文章,记录一下自己的安装过程.非常感谢参考文章的前辈写的文章. 参考Docker安装Je ...
- 使用Docker安装Jenkins
Jenkins Jenkins是一个开源软件项目,是基于Java开发的一种持续集成工具,用于监控持续重复的工作,旨在提供一个开放易用的软件平台,使软件的持续集成变成可能. 环境准备 腾讯云 硬件配置: ...
- linux下快速安装jenkins
Linux下快速安装Jenkins 建议使用 FileZilla 工具简化以下步骤中移动.环境变量配置等步骤. 1 软件下载 l Java:jdk-7u17-linux-x64.tar.g ...
- Linux通过docker安装运行酷Q--用QQ骰子君进行跑团
Linux通过docker安装运行酷Q 文:铁乐与猫 需求:和小伙伴周末进行愉快的TRPG跑团,需要在QQ讨论组上加了qq小号后,将qq小号用酷Q配合投骰的应用变成骰子君. 限制:我个人的云计算服务器 ...
- docker 安装 jenkins 笔记
前提: 已安装好 docker-ce,可运行 docker 命令 命令: sudo docker pull jenkins mkdir -p ~/dockers/jenkins cd ~/docker ...
- gitlab+jenkins自动构建jar包并发布
一.背景介绍: 公司软件都是java开发的,一般都会将java代码打包成jar包发布:为了减轻运维部署的工作量,合理偷懒,就需要自动化流程一条龙服务:开发将代码提交到gitlab--->jenk ...
随机推荐
- Mysql优化,ICP、BNL算法、BKA算法、MMR算法
ICP(Index Condition Pushdown,索引条件下推)是MySQL5.6版本中的新特性,是一种在存储引擎层使用索引过滤数据的一种优化方式. 出现原因:ICP出现Mysql5.6以前, ...
- R shinydashboard ——1. 基本用法
shiny和shinydashboard使用虽然简单,但控件众多,需及时总结归纳. install.packages("shinydashboard") shinydashboar ...
- Docker网络设置及文件挂载
网络设置–net=bridge- 默认选项,用网桥的方式来连接docker容器.–net=host- docker跳过配置容器的独立网络栈.–net=container:NAME_or_ID- 告诉d ...
- 自动化测试系列(二)|API测试
在上次的自动化测试系列(一)中为大家大体介绍了自动化测试的概念,本文主要针对API测试的概念及API测试在猪齿鱼Choerodon中的实践展开. API(应用程序编程接口)测试是一种软件测试,可以直接 ...
- 34、在排序数组中查找元素的第一个和最后一个位置 | 算法(leetode,附思维导图 + 全部解法)300题
零 标题:算法(leetode,附思维导图 + 全部解法)300题之(34)在排序数组中查找元素的第一个和最后一个位置 一 题目描述 二 解法总览(思维导图) 三 全部解法 1 方案1 1)代码: / ...
- Learning Spark中文版--第四章--使用键值对(1)
本章介绍了如何使用键值对RDD,Spark中很多操作都基于此数据类型.键值对RDD通常在聚合操作中使用,而且我们经常做一些初始的ETL(extract(提取),transform(转换)和load ...
- CSS系列,清除浮动方法总结
在非IE浏览器(如Firefox)下,当容器的高度为auto,且容器的内容中有浮动(float为left或right)的元素.在这种情况下,容器的高度不能自动伸长以适应内容的高度,使得内容溢出到容器外 ...
- 编程之美Q1
题目 和数书页有点类似,就直接数吧 #include<iostream> using namespace std; class q1 { public: size_t func(size_ ...
- centos 7 重新获取IP地址
1.安装软件包 dhclient # yum install dhclient 2.释放现有IP # dhclient -r 3.重新获取 # dhclient 4.查看获取到到IP # ip a
- Android Loader异步装载
一.Loader简介: (一).Loader的概念: 装载器从android3.0开始引进.它使得在activity或fragment中异步加载数据变得简单. 当成批显示数据的时候,为了使用户体验更好 ...