docker+jenkins部署springBoot项目(centOS)

本文详细介绍了如何在CentOS上安装Docker和Jenkins,包括系统更新、依赖安装、存储库添加、Docker安装、Jenkins下载与启动、登录、插件安装、JDK和Maven配置,以及防火墙设置以便访问。
摘要由CSDN通过智能技术生成

一、安装docker

1、首先,确保您的系统是最新的。运行以下命令更新软件包列表和系统

sudo dnf update

 2、安装所需的依赖项

sudo dnf install -y dnf-utils device-mapper-persistent-data lvm2

3、添加Docker官方存储库。您可以使用以下命令来添加

sudo dnf config-manager --add-repo=https://download.docker.com/linux/centos/docker-ce.repo

4、安装Docker引擎

sudo dnf install docker-ce

5、启动Docker服务并将其设置为开机启动

sudo systemctl start docker
sudo systemctl enable docker

6、验证Docker是否已成功安装。如下图,表示docker已安装完成。

docker --version

 二、安装jenkins

1、下载jenkins

docker pull jenkins/jenkins

2、启动jenkins

docker run --name myjenkins -d -p 8085:8080 -p 50000:50000 jenkins/jenkins 

这里的8085端口是等会我们在浏览器访问jenkins的端口,这里进行了端口映射

 三、登录jenkins

1、使用ip+端口登录jenkins(ifconfig可以查看ip地址)

2、进入容器查看管理员密码

docker exec -it myjenkins bash
cat /var/jenkins_home/secrets/initialAdminPassword

3、安装推荐插件,点击安装推荐插件,等待插件安装结束

 

 4、设置管理员账号,保存并完成

5、配置实例,开始使用jenkins

 四、安装插件

 1、安装maven插件

 2、安装ssh插件

 等待插件安装完成

五、配置jdk和maven

 1、安装jdk(JAVA_HOME: /opt/java/openjdk)

 2、安装maven

六、远程的凭证配置

 拉到最下面,找到SSH Servers,点击新增

 七、创建项目

点击新建任务,输入任务名称,构建maven项目,点击确定

 

 源码管理选择git

 如果Repository UR这里校验失败,gitee的仓库需要设置成开源

打包跳过测试

 clean package -Dmaven.test.skip=true  

 上传构建好的文件

 

 

 脚本文件如下

#!/bin/bash
function killproject()
{
  project_pid=$(netstat -lnp | grep 8098|awk '{print $7}'|cut -d/ -f1)
  if [  $project_pid > 0 ];then
        echo "项目已经启动了,开始关闭项目,项目pid为: $project_pid "
        kill -9 $(netstat -lnp | grep 8098|awk '{print $7}'|cut -d/ -f1)
        echo '项目关闭成功,开始重启项目。。。'
  else
        echo "项目未启动,直接启动"
  fi
}
function start_project()
{
        source /etc/profile
        echo '正在启动项目。。。'
        cd /jenks/target/
        nohup java -jar demo01-0.0.1-SNAPSHOT.jar >publish.log &2>1 &
 
}
function check_project()
{
  check_pid=$(netstat -lnp | grep 8098|awk '{print $7}'|cut -d/ -f1)
  if [ $check_pid  > 0 ];then
        echo "project is start and  pid = : $check_pid  "
  else
        echo "project are not start"
  fi
 
}
killproject
start_project
sleep 15
check_project
# 输出启动日志
cat /jenks/target/publish.log

修改三个地方:1、将端口8098替换成自己springboot的端口

                          2、将demo01-0.0.1-SNAPSHOT.jar替换成自己项目的名字(在idea中打包可以看到这个名字)注意:所有些demo01-0.0.1-SNAPSHOT.jar的地方都需要替换成自己的jar包名

  八、构建前准备工作

服务器中创建service.sh脚本,将上面代码复制到service.sh脚本文件中

sudo mkdir /jenks
cd /jenks
touch service.sh
vi service.sh
chmod +x service.sh

注意:请确保service.sh执行脚本有权限,加这行命令就可:chmod +x service.sh

因为 /jenks/target/这个文件目录在服务器上没有所以需要提前创建号存放jar包的文件目录,创建命令如下:

sudo mkdir /jenks
sudo mkdir /jenks/target

开始构建系统

九、访问项目

 为什么不能访问呢?因为CentOS默认启用了防火墙,可能会阻止对Java程序的访问,所以需要打开对应的端口。如果您的Java程序在8098端口上运行,可以使用以下命令打开该端口

sudo firewall-cmd --zone=public --add-port=8098/tcp --permanent
sudo firewall-cmd --reload

再次访问,成功了

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
好的,以下是使用 JenkinsDocker 进行 CentOS 部署 Spring Boot 项目的详细步骤和命令: 1. 在 CentOS 中安装 DockerDocker Compose ```bash # 安装 Docker sudo yum update sudo yum install docker # 安装 Docker Compose sudo curl -L "https://github.com/docker/compose/releases/download/1.29.2/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose sudo chmod +x /usr/local/bin/docker-compose ``` 2. 在 CentOS 中拉取 Docker 镜像 ```bash # 从 Docker 仓库中拉取镜像 sudo docker pull your-docker-registry/image-name:tag ``` 3. 在 CentOS 中运行 Spring Boot 镜像 ```bash # 运行 Spring Boot 镜像 sudo docker run -d -p 8080:8080 your-docker-registry/image-name:tag # 如果你的 Spring Boot 应用需要使用数据库,你需要为其配置一个数据库服务。你可以使用 Docker Compose 来管理容器编排。 # 在服务器上创建一个文件夹来存储 Docker Compose 配置文件 mkdir ~/docker-compose # 在该文件夹中创建一个 docker-compose.yml 文件 nano ~/docker-compose/docker-compose.yml # 编辑该文件并添加以下内容: version: "3" services: app: image: your-docker-registry/image-name:tag ports: - "8080:8080" db: image: postgres environment: POSTGRES_USER: your-db-user POSTGRES_PASSWORD: your-db-password POSTGRES_DB: your-db-name # 启动 Docker Compose cd ~/docker-compose sudo docker-compose up -d # 如果你需要停止 Docker Compose sudo docker-compose down ``` 4. 在 Jenkins 中配置 Maven 插件和 Docker 插件 - 在 Jenkins 中安装 Maven 插件和 Docker 插件。 - 在 Jenkins 中配置 Docker 插件,确保 Jenkins 可以与 Docker 交互。 5. 在 Jenkins 中创建一个新的构建项目 - 在 Jenkins 中创建一个新的 Maven 项目,并配置 Git 代码库以获取源代码。 - 在构建项目中配置 Maven 构建步骤,构建出可执行的 Spring Boot jar 包。 - 在构建项目中添加一个后置操作步骤,使用 Docker 插件进行 Docker 镜像的构建。你需要为 Docker 镜像指定一个名称和标签,并指定构建上下文。 - 在构建项目中添加另一个后置操作步骤,使用 Docker 插件将构建好的镜像推送到 Docker 仓库中。 6. 在目标服务器上使用 Docker 运行 Spring Boot 镜像 - 在目标服务器上拉取构建好的 Spring Boot 镜像。 - 在目标服务器上使用 Docker 运行 Spring Boot 镜像,你可以使用 Docker Compose 或 Docker Stack 进行容器编排和管理。 以上是使用 JenkinsDocker 进行 CentOS 部署 Spring Boot 项目的详细步骤和命令,希望对你有所帮助。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值