拉取镜像
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/test.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 [email protected]:/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包下来打包
配置好了 点击立即构建 就可以查看效果了