Docker+Jenkins实现一键自动化部署项目的图文教学

 更新时间:2025年05月29日 10:10:12   作者:扶风呀  
Jenkins是一个广泛使用的开源持续集成工具,它能自动化构建,测试和部署软件项目,本文主要介绍了关于docker搭建Jenkins实现一键自动化部署项目,需要的朋友可以参考下

1、docker安装Jenkins

1.1、在根目录下创建文件夹

cd /
mkdir -p /mydata/jenkins/jenkins_home 
mkdir -p /mydata/jenkins/localtime

1.2、下载jenkins镜像并启动运行

docker pull jenkins/jenkins:2.414.2
docker run -d -u root -p 8080:8080 -p 50000:50000 -v /mydata/jenkins/jenkins_home:/var/jenkins_home -v /mydata/jenkins/localtime  --name jenkins jenkins/jenkins:2.414.2

1.3、初始化Jenkins

获取密码

docker logs jenkins

页面访问:http://{部署Jenkins所在服务IP}:8080

1.4、Jenkins安装步骤

选择推荐的插件

密码:123456

2、安装maven插件

2.1、通过手动上传安装

apache-maven-3.9.9-bin.tar.gz

解压并复制到指定目录

tar -zxvf apache-maven-3.9.9-bin.tar.gz
cp -r /mydata/apache-maven-3.9.9 /mydata/jenkins/jenkins_home

2.2、配置maven仓库

   <localRepository>/mydata/jenkins/jenkins_home/apache-maven-3.9.9/m2</localRepository>
   
   
   	<!-- 阿里云仓库 	-->
	<mirror>
		<id>alimaven</id>
		<mirrorOf>central</mirrorOf>
		<name>aliyun maven</name>
		<url>http://maven.aliyun.com/nexus/content/repositories/central/</url>
	</mirror>
	
	
	<profile>     
		<id>JDK-1.8</id>       
		<activation>       
			<activeByDefault>true</activeByDefault>       
			<jdk>1.8</jdk>       
		</activation>       
		<properties>       
			<maven.compiler.source>1.8</maven.compiler.source>       
			<maven.compiler.target>1.8</maven.compiler.target>       
			<maven.compiler.compilerVersion>1.8</maven.compiler.compilerVersion>       
		</properties>       
	</profile>

3、Jenkins全局配置

路径:Dashboard > Manage Jenkins > Tools

3.1、下载插件 Publish over SSH

3.2、配置地址

1.SSH Server Name 填你虚拟机IP或用户名

2.Hostname 填你的虚拟机IP

3.Username 默认root

4.Remote Directory 填 /

5.保存

4、创建任务测试

注意:这个任务名称对应的就是代码所在的文件夹

4.1、配置仓库地址

4.2、构建启动

目标:clean install

pom.xml是项目代码所在位置

cp /mydata/jenkins/jenkins_home/workspace/fufeng/target/deploy-0.0.1-SNAPSHOT.jar /mydata/jenkins/jenkins_home/jar/
#!/bin/bash
APP_NAME=deploy-0.0.1-SNAPSHOT.jar
LOG_NAME=deploy-0.0.1-SNAPSHOT.log

pid=`ps -ef | grep $APP_NAME | grep -v grep|awk '{print $2}'`

function is_exist(){
pid=`ps -ef | grep $APP_NAME | grep -v grep|awk '{print $2}'`
if [ -z ${pid} ]; then
String="notExist"
echo $String
else
String="exist"
echo $String
fi
}

str=$(is_exist)
if [ ${str} = "exist" ]; then
echo " 检测到已经启动的程序,pid 是 ${pid} "
kill -9 $pid
else
echo " 程序没有启动了 "
echo "${APP_NAME} is not running"
fi

str=$(is_exist)
if [ ${str} = "exist" ]; then
echo "${APP_NAME} 已经启动了. pid=${pid} ."
else
source /etc/profile
BUILD_ID=dontKillMe
nohup java -Xms300m -Xmx300m -jar /mydata/jenkins/jenkins_home/workspace/fufeng/target/$APP_NAME   >$LOG_NAME 2>&1 &
echo "程序已重新启动..."
fi

启动脚本里面的路径手动创建

应用保存!

4.3、验证是否启动成功

查看Java进程:

页面测试:

应用保存!

以上就是Docker+Jenkins实现一键自动化部署项目的图文教学的详细内容,更多关于Docker Jenkins自动化部署项目的资料请关注脚本之家其它相关文章!

相关文章

  • 如何修改docker官方镜像内部内容并重新build镜像

    如何修改docker官方镜像内部内容并重新build镜像

    这篇文章主要介绍了如何修改docker官方镜像内部内容并重新build镜像问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2024-08-08
  • docker 搭建部署 YAPI 框架的详细过程

    docker 搭建部署 YAPI 框架的详细过程

    Yapi是一个高效、易用、功能强大的接口文档管理工具,旨在为开发、产品、测试人员提供更优雅的接口管理服务,可以帮助开发者轻松创建、发布、维护 AP,这篇文章主要介绍了docker 搭建部署 YAPI 框架,需要的朋友可以参考下
    2022-08-08
  • Docker + Nginx + Logrotate 日志管理与轮换实践

    Docker + Nginx + Logrotate 日志管理与轮换实

    本文主要介绍了Docker + Nginx + Logrotate 日志管理与轮换实践,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2026-05-05
  • 如何在 Ubuntu 下通过 Docker 部署 Caddy 服务器

    如何在 Ubuntu 下通过 Docker 部署 Caddy 

    本文介绍了如何在Ubuntu系统下通过Docker部署Caddy服务器,首先安装Docker,然后启动Docker服务并设置为开机自启,接着拉取Caddy镜像,并创建一个Caddyfile配置文件,使用命令运行Caddy容器,并将本地的Caddyfile挂载到容器内,感兴趣的朋友跟随小编一起看看吧
    2025-03-03
  • docker 部署Flink和传统部署的详细过程

    docker 部署Flink和传统部署的详细过程

    Flink是一个开源的分布式流处理框架,支持状态管理、事件时间、窗口模型等特性,可以通过下载、解压、配置和启动来使用,提供了多种运行方式,包括Docker和SQLClient,本文介绍docker部署Flink和传统部署的详细过程,感兴趣的朋友跟随小编一起看看吧
    2025-11-11
  • docker部署Vaultwarden密码共享管理系统的实现(图文)

    docker部署Vaultwarden密码共享管理系统的实现(图文)

    Vaultwarden是一个开源的密码管理器,它提供了类似于Bitwarden的功能,允许用户安全地存储和管理密码、敏感数据和身份信息,本文主要介绍了docker部署Vaultwarden密码共享管理系统的实现,感兴趣的可以了解一下
    2023-10-10
  • Docker使用java项目工程的部署

    Docker使用java项目工程的部署

    随着容器化技术的广泛应用,Docker成为了一种非常流行的容器化解决方案,本文主要介绍了Docker使用java项目工程的部署,具有一定的参考价值,感兴趣的可以了解一下
    2024-03-03
  • Docker 实用技巧总结

    Docker 实用技巧总结

    这篇文章主要介绍了Docker 实用技巧总结的相关资料,需要的朋友可以参考下
    2016-10-10
  • 详解使用Docker容器来源码编译etcd

    详解使用Docker容器来源码编译etcd

    这篇文章主要介绍了详解使用Docker容器来源码编译etcd,具有一定的参考价值,感兴趣的小伙伴们可以参考一下。
    2017-03-03
  • Gogs+Jenkins+Docker 自动化部署.NetCore的方法步骤

    Gogs+Jenkins+Docker 自动化部署.NetCore的方法步骤

    这篇文章主要介绍了Gogs+Jenkins+Docker 自动化部署.NetCore,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2021-06-06

最新评论