一、搭建jenkins
链接: https://pan.baidu.com/s/1jzx15PiyI8EhLd_vg7q8bw 提取码: ydhl 复制这段内容后打开百度网盘手机App,操作更方便哦
直接使用docker导入镜像,运行就好
docker run -di --name jenkins -p 8080:8080 -v /home/jenkins_home:/var/jenkins_home jenkins
这里我把jenkins的主目录挂载出来了,以防jenkins宕机,重启docker以前的jenkins配置就全没了(不要问我怎么知道的,下载jenkins插件的时候,老容易宕机了,重启了好几次容器)
密码:
admin
123456
1、下载插件
2024年8月3日还能使用的插件镜像源:
https://mirrors.tuna.tsinghua.edu.cn/jenkins/updates/update-center.json
2、配置git、maven、jdk、ssh远程登录
git用于拉取仓库的代码,maven用来构建项目(后续搭建一个本地maven仓库,自己公司写的jar包只能放在公司的服务器上)
最上面后续改变一下配置文件的地址,使用自己的配置文件,绑定私有的maven仓库,这样就能使用自己写的jar包了。
配置ssh也就是项目需要运行的服务器,远程将打包好的jar包上传上去,然后远程执行运行docker。这里配置地址和连接信息,具体的操作需要在jenkins构建项目时详细配置。
3、配置连接秘钥
二、创建项目
填写项目的gitlab地址,选择上面添加的gitlab账号密码,或者在这里添加也是可以的
设置pom文件地址,这是相对于项目的,不需要全局
添加ssh操作
docker文件,创建运行docker的脚本
DockerFile文件
FROM openjdk:8-jre MAINTAINER xwb RUN ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/locatime #暴露的端口 EXPOSE 8881 #用来指定当前工作目录(或者称为当前目录) 当使用相对目录的情况下,采用上一个WORKDIR指定的目录作为基准 #相当与cd 命令,但不同的是指定了WORKDIR后,容器启动时执行的命令会在该目录下执行 WORKDIR /usr/local/software/dockerImg/jenkins-demo # 将targer目录下的jar包复制到docker容器/目录下面 ADD /target/nihaoshijie-1.0-SNAPSHOT.jar /jenkins-demo.jar CMD ["java","-jar","/jenkins-demo.jar"]
ADD操作是基于DockerFile操作的,也就是说不能有\var,\home等前缀,只能是和DockerFile同级或者子级别
执行脚本
#!/bin/bash containerName="jenkins-demo" PROJECT_NAME="jenkins-demo-dockerfile" echo "=====*****=====停止$containerName容器" docker stop $containerName echo "=====*****=====删除$containerName容器" docker rm $containerName echo "=====*****=====删除$containerName镜像" docker rmi $containerName echo "=====*****=====构建镜像=====*****=====docker build -t $containerName ." cd /home/t2/nihaoshijie/nihaoshijie docker build -t $containerName . echo "=====*****=====docker启动容器 docker run --name $containerName -d -p 8881:8881 $containerName" docker run --name $containerName -d -p 8881:8881 $containerName
调用远程接口: