一. docker环境搭建,此处略过。
二. docker部署jekins
2.1 拉取镜像,挂载工作目录,xxxx为宿主机指定工作目录
docker pull jenkins/jenkins
docker run -d -p 8080:8080 -p 50000:50000 --name jenkins --privileged=true
-v xxxxxxxxxx:/var/jenkins_home jenkins/jenkins
2.2 访问localhost:8080服务,后续根据引导安装插件
2.3 点击系统管理菜单,给jekins安装以下插件、maven-integration-plugin、publish_over_ssh、gitee;并配置jdk、maven环境。
2.4 新建任务->选择构建一个自由风格的软件项目,在源码管理处配置外部gitee的仓库地址,用户名和密码,选择maven版本,并指定要传输的jar、Dockerfile等文件地址,配置ssh server和构建完之后要执行的脚本。涉及到的脚本如下:
# Dockerfile
FROM openjdk:17
ADD java-study-0.0.1-SNAPSHOT.jar app.jar
EXPOSE 8888
ENTRYPOINT ["nohup","java","-jar","app.jar","--spring.profiles.active=prod"]
# deploy.sh
docker stop java-study || true
docker rm java-study || true
docker rmi java-study || true
docker build -t java-study .
docker run -d -p 8888:8888 --name java-study java-study:latest
# maven构建完执行的命令
cd /home/jar/
sh /home/jar/deploy.sh
2.5 最后点击立即构建即可实现ci/cd。