docker+jekins+maven+ssh 持续集成交付部署 jar包

一. docker环境搭建,此处略过。

二. docker部署jekins

2.1 拉取镜像,挂载工作目录,xxxx为宿主机指定工作目录

bash 复制代码
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和构建完之后要执行的脚本。涉及到的脚本如下:

bash 复制代码
# 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。

相关推荐
阿尔帕兹几秒前
构建 HTTP 服务端与 Docker 镜像:从开发到测试
网络协议·http·docker
ZHOU西口1 小时前
微服务实战系列之玩转Docker(十八)
分布式·docker·云原生·架构·数据安全·etcd·rbac
Amelio_Ming3 小时前
Permissions 0755 for ‘/etc/ssh/ssh_host_rsa_key‘ are too open.问题解决
linux·运维·ssh
尘浮生6 小时前
Java项目实战II基于Spring Boot的光影视频平台(开发文档+数据库+源码)
java·开发语言·数据库·spring boot·后端·maven·intellij-idea
川石课堂软件测试7 小时前
性能测试|docker容器下搭建JMeter+Grafana+Influxdb监控可视化平台
运维·javascript·深度学习·jmeter·docker·容器·grafana
追风林14 小时前
mac 本地docker-mysql主从复制部署
mysql·macos·docker
aloha_78914 小时前
从零记录搭建一个干净的mybatis环境
java·笔记·spring·spring cloud·maven·mybatis·springboot
城南vision16 小时前
Docker学习—Docker核心概念总结
java·学习·docker
wclass-zhengge16 小时前
Docker篇(Docker Compose)
运维·docker·容器
尢词16 小时前
SpringMVC
java·spring·java-ee·tomcat·maven