拉取镜像

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包发布的更多相关文章

  1. Docker安装Jenkins打包Maven项目为Docker镜像并运行【保姆级图文教学】

    一.前言 Jenkins作为CI.CD的先驱者,虽然现在的风头没有Gitlab强了,但是还是老当益壮,很多中小公司还是使用比较广泛的.最近小编经历了一次Jenkins发包,感觉还不错,所以自己学习了一 ...

  2. Docker的安装以及使用Docker安装jenkins,gogs,tomcat(一)

    (1)Docker的安装  官网安装链接 :https://yeasy.gitbooks.io/docker_practice/content/ 卸载旧版本 旧版本的 Docker 称为 docker ...

  3. docker 安装jenkins 发布 asp.net core 2.0

    安装Docker 其实安装Docker的过程,大家可以到Docker官网找到自己相对应的安装文档进行安装,Docker区分CE和EE的两个版本,具体这两个版本有什么区别,大家自行查阅相关资料,这里不再 ...

  4. Mac 环境docker 安装jenkins

    网上很多的教程是讲的是Linux 上的Docker安装Jenkins,但是我用的是Mac,所以参考之前的前辈写的文章,记录一下自己的安装过程.非常感谢参考文章的前辈写的文章. 参考Docker安装Je ...

  5. 使用Docker安装Jenkins

    Jenkins Jenkins是一个开源软件项目,是基于Java开发的一种持续集成工具,用于监控持续重复的工作,旨在提供一个开放易用的软件平台,使软件的持续集成变成可能. 环境准备 腾讯云 硬件配置: ...

  6. linux下快速安装jenkins

    Linux下快速安装Jenkins 建议使用 FileZilla 工具简化以下步骤中移动.环境变量配置等步骤. 1      软件下载 l  Java:jdk-7u17-linux-x64.tar.g ...

  7. Linux通过docker安装运行酷Q--用QQ骰子君进行跑团

    Linux通过docker安装运行酷Q 文:铁乐与猫 需求:和小伙伴周末进行愉快的TRPG跑团,需要在QQ讨论组上加了qq小号后,将qq小号用酷Q配合投骰的应用变成骰子君. 限制:我个人的云计算服务器 ...

  8. docker 安装 jenkins 笔记

    前提: 已安装好 docker-ce,可运行 docker 命令 命令: sudo docker pull jenkins mkdir -p ~/dockers/jenkins cd ~/docker ...

  9. gitlab+jenkins自动构建jar包并发布

    一.背景介绍: 公司软件都是java开发的,一般都会将java代码打包成jar包发布:为了减轻运维部署的工作量,合理偷懒,就需要自动化流程一条龙服务:开发将代码提交到gitlab--->jenk ...

随机推荐

  1. Redis概述以及Linux安装

    Redis 概述 Redis是什么 Redis,Remote Dictionary Server,远程字典服务.是一个开源的使用ANSI C语言编写.支持网络.可基于内存亦可持久化的日志型.key-v ...

  2. 用pipenv管理python虚拟环境

    python的虚拟环境可以为项目创建一个独立的环境,能够解决使用不同版本依赖给项目带来冲突的麻烦.创建虚拟环境的方式有很多种,pipenv会自动帮你管理虚拟环境和依赖文件,并且提供了一系列命令和选项来 ...

  3. Python基础之流程控制if判断

    目录 1. 语法 1.1 if语句 1.2 if...else 1.3 if...elif...else 2. if的嵌套 3. if...else语句的练习 1. 语法 1.1 if语句 最简单的i ...

  4. 第三个基础框架 — springMVC — 更新完毕

    1.什么是springMVC? 还是老规矩,百度百科一下 这里面说了一堆废话,去官网瞄一下 官网网址:https://docs.spring.io/spring-framework/docs/curr ...

  5. adhere, adjust, adjacent

    adhere to stick,不是to here. 在古英语里,stick是twig(细树枝).fasten(想必是用twig来固定).后引申为粘住.stick还有stab, pierce的意思,想 ...

  6. map和forEach的区别

    总结 forEach()可以做到的东西,map()也同样可以.反过来也是如此. map()会分配内存空间存储新数组并返回,forEach()不会返回数据. forEach()允许callback更改原 ...

  7. SVN终端演练(个人开发\多人开发)

    SVN终端演练(个人开发) ### 1. 命令格式 命令行格式: svn <subcommand> [options] [args]       svn 子命令 [选项] [参数]     ...

  8. Redis集群的三种模式

    一.主从模式 通过持久化功能,Redis保证了即使在服务器重启的情况下也不会损失(或少量损失)数据,因为持久化会把内存中数据保存到硬盘上,重启会从硬盘上加载数据. 但是由于数据是存储在一台服务器上的, ...

  9. 【Java多线程】线程池-ThreadPoolExecutor

    ThreadPoolExecutor提供了四个构造方法: 我们以最后一个构造方法(参数最多的那个),对其参数进行解释: public ThreadPoolExecutor(int corePoolSi ...

  10. Java变量和常量

    变量 变量要素包括:变量名,变量类型,作用域. 变量作用域:类变量(static),实例变量(没有static),局部变量(写在方法中) //类中可以定义属性(变量) static double sa ...