docker+jenkins+gitee+shell 自动化部署微服务(基于若依)【详细完整版】

这篇具有很好参考价值的文章主要介绍了docker+jenkins+gitee+shell 自动化部署微服务(基于若依)【详细完整版】。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

docker+jenkins+gitee+shell 自动化部署基于RuoYi-Cloud的微服务(详细完整版)



一、准备工作

提示:需基本熟悉docker命令、shell脚本、微服务部署、git命令、服务器基本命令、node、maven
服务器环境:Linux-EulerOS(华为自主研发服务器系统,与CentOS基本类似)

安装组件:docker20.10.19、openjdk1.8.0_191、maven3.8.6、git2.33.0、node16.17.1、npm9.1.2、jenkinsci/blueocean、docker-compose

远程工具:Xshell7、Xftp7

二、安装docker及compose

dokcer安装:快速安装Docker详细图文步骤教程
docker-compose安装:

离线方式

1、到官网下载docker-compose的离线包

下载地址:https://github.com/docker/compose/eleases
docker+jenkins+gitee+shell 自动化部署微服务(基于若依)【详细完整版】

2、下载好离线包,把离线包放在指定目录下就不需要配置环境变量

mv docker-compose-linux-x86_64 /usr/local/bin/
#修改文件名
mv docker-compose-linux-x86_64 docker-compose
#授权
sudo chmod +x /usr/local/bin/docker-compose
#查看安装是否成功
docker-compose -v

在线方式

1、下载
因为Docker Compose存放在GitHub,可能不太稳定。可以通过DaoCloud加速下载

curl -L https://get.daocloud.io/docker/compose/releases/download/1.27.2/docker-compose-`uname -s`-`uname -m` > /usr/local/bin/docker-compose

您可以通过修改 URL 中的版本,自定义您所需要的版本文件。

授权

# 将可执行权限应用于该二进制文件
sudo chmod +x /usr/local/bin/docker-compose

查看

docker-compose --version

卸载

rm /usr/local/bin/docker-compose

三、git、maven、jdk、node安装

自行搜索教程安装


四、docker安装jenkins

1.创建本地映射jenkins资源目录

mkdir -p /home/docker/jenkins

2.下载启动

没有jenkins镜像会自动下载

docker run \
  -u root \
  -d \
  -p 9100:8080 \
  --restart always \
  --privileged=true \
  -v /usr/lib/jvm/jre-1.8.0-openjdk-1.8.0.191.b12-0.h23.eulerosv2r7.x86_64:/usr/java/jdk1.8.0_191 \
  -v /usr/local/apache-maven-3.8.6:/usr/local/maven \
  -v /usr/local/apache-maven-3.8.6/repo:/usr/local/maven_repository \
  -v /usr/local/git/:/usr/local/git \
  -v /home/docker/jenkins:/var/jenkins_home \
  --name jenkins \
  jenkinsci/blueocean

3.使用root用户进入容器

docker exec -it --user root jenkins /bin/bash

4.查看复制密码

cat /var/jenkins_home/secrets/initialAdminPassword

5.配置

1.访问你配置的jenkins地址 服务器ip:9100
2.粘贴复制的密码解锁jenkins
3.创建管理员用户
4.进入全局工具配置
docker+jenkins+gitee+shell 自动化部署微服务(基于若依)【详细完整版】
5.配置jdk
查看容器内jdk路径

docker exec -it --user root jenkins /bin/bash
echo $JAVA_HO

docker+jenkins+gitee+shell 自动化部署微服务(基于若依)【详细完整版】
6.配置git、maven
根据启动命令拷贝到容器内的路径

docker+jenkins+gitee+shell 自动化部署微服务(基于若依)【详细完整版】
注意:去除自动安装
docker+jenkins+gitee+shell 自动化部署微服务(基于若依)【详细完整版】

docker+jenkins+gitee+shell 自动化部署微服务(基于若依)【详细完整版】docker+jenkins+gitee+shell 自动化部署微服务(基于若依)【详细完整版】
7.进入插件管理
docker+jenkins+gitee+shell 自动化部署微服务(基于若依)【详细完整版】
8.参考安装maven插件、gitee插件、publish over ssh插件

点击可安装的—搜索—选择—安装
安装完成后可点击已安装的查看

docker+jenkins+gitee+shell 自动化部署微服务(基于若依)【详细完整版】

若下载失败可参考以下方法:

升级Jenkins
我们安装的Jenkins可能不是最新版的,那么除了重新安装最新版的Jenkins,还有一种比较方便的升级方式。如果我们使用的不是最新版的,Jenkins会提示我们下载最新版,并给出链接

  • 点击链接下载一个jenkins.war文件
  • 查看系统信息,获取jenkins.war的路径
  • 将下载的jenkins.war替换查询到的文件
  • 访问地址后加/restart,重启Jenkins

修改插件下载源
替换清华源插件管理->高级->升级站点,将URL替换为清华源:

https://mirrors.tuna.tsinghua.edu.cn/jenkins/updates/update-center.json

点击提交,然后立即获取
docker+jenkins+gitee+shell 自动化部署微服务(基于若依)【详细完整版】

替换更新文件中的内容网上说的大部分都只有上面那一步,但是实际上是不生效的,我们需要再修改一个文件,在jenkins_home目录下updates/default.json文件,注意这个文件是在执行了上面的步骤才会生成,默认是没有的。将default.json文件中所有的update.jinkens.io/download替换为mirrors.tuna.tsinghua.edu.cn/jenkins,保存后重启Jenkins

docker exec -it --user root jenkins /bin/bash
sed -i 's/update.jinkens.io\/download/mirrors.tuna.tsinghua.edu.cn\/jenkins/g'  /var/jenkins_home/updates/default.json > result.xml

9.配置gitee、ssh

进入系统配置
docker+jenkins+gitee+shell 自动化部署微服务(基于若依)【详细完整版】

找到gitee配置
docker+jenkins+gitee+shell 自动化部署微服务(基于若依)【详细完整版】
点击添加 ,选择gitee令牌,前往获取私人令牌,填入,id自定义docker+jenkins+gitee+shell 自动化部署微服务(基于若依)【详细完整版】
点击测试
docker+jenkins+gitee+shell 自动化部署微服务(基于若依)【详细完整版】
找到
docker+jenkins+gitee+shell 自动化部署微服务(基于若依)【详细完整版】
点击新增 配置服务器器连接 点击测试
docker+jenkins+gitee+shell 自动化部署微服务(基于若依)【详细完整版】
确认无误后 点击应用 保存


五、创建任务

docker+jenkins+gitee+shell 自动化部署微服务(基于若依)【详细完整版】
点击配置
docker+jenkins+gitee+shell 自动化部署微服务(基于若依)【详细完整版】
选择git进行配置
docker+jenkins+gitee+shell 自动化部署微服务(基于若依)【详细完整版】
选择构建触发器 视情况自行配置
docker+jenkins+gitee+shell 自动化部署微服务(基于若依)【详细完整版】

点击生成密码
docker+jenkins+gitee+shell 自动化部署微服务(基于若依)【详细完整版】
前往gitee找到仓库设置 进行webhooks配置
docker+jenkins+gitee+shell 自动化部署微服务(基于若依)【详细完整版】
项目打包配置及命令
docker+jenkins+gitee+shell 自动化部署微服务(基于若依)【详细完整版】
选择增加构建步骤
docker+jenkins+gitee+shell 自动化部署微服务(基于若依)【详细完整版】
工作目录
进入容器内容后查看

docker exec -it --user root jenkins /bin/bash
cd /var/jerkins_home/workspace/你定义的项目名

进行配置 传递**即为所有文件
docker+jenkins+gitee+shell 自动化部署微服务(基于若依)【详细完整版】
jenkins.sh

#!/bin/bash
echo "清理已有容器及镜像资源"
	for container in {"gateway","auth","modules-system"}
do
	image=docker_${container}
	if docker ps | grep ${container} ;then
	    docker stop ${container}
	fi
	if docker ps -a | grep ${container};then
	    docker rm ${container}
	fi
	if docker images | grep ${image};then
	    docker rmi ${image}
	fi
done
# 拷贝构建的jar包到宿主机
/home/docker/copy.sh
# 重新启动docker项目
/home/docker/deploy.sh modules

copy.sh

cp /home/sw/gateway/target/smartwater-gateway.jar /home/docker/sw/gateway/jar
cp /home/sw/auth/target/smartwater-auth.jar /home/docker/sw/auth/jar
cp /home/sw/modules/system/target/modules-system.jar /home/docker/sw/modules/system/jar

deploy.sh

#开启端口
firewall-cmd --add-port=80/tcp --permanent
firewall-cmd --add-port=8080/tcp --permanent
firewall-cmd --add-port=8848/tcp --permanent
firewall-cmd --add-port=9200/tcp --permanent
firewall-cmd --add-port=9201/tcp --permanent
service firewalld restart

docker-compose up -d nacos nginx
docker-compose up -d gateway auth modules-system 

微服务docker部署大致结构
docker+jenkins+gitee+shell 自动化部署微服务(基于若依)【详细完整版】

docker-compose.yml以及dockerfile 自行查阅配置


六、总结

  • 安装必要环境软件
  • 使用docker启动微服务测试
  • 安装jenkins以及完善相关配置(主要作用是拉取代码、自动构建、远程及本地执行脚本)
  • git配置webhooks(主要是推送提交信息)
  • 编写shell脚本(主要是构建项目、拷贝文件到指定目录、重启项目)

夜色难免荒凉,前行必有曙光。文章来源地址https://www.toymoban.com/news/detail-410555.html

到了这里,关于docker+jenkins+gitee+shell 自动化部署微服务(基于若依)【详细完整版】的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Jenkins结合gitee自动化部署SpringBoot项目

    安装教程 Gitee Plugin 源码管理 填写源码地址 注意: 请确保genkins所在的服务器有权限git拉取远程仓库代码,如果不可以请参考ssh配置 centos 配置ssh拉取远程git代码 源码管理 构建触发器 1.勾选Gitee webhook 触发构建 2.生成webhook密码 构建触发器   3.在gitee项目管理中配置webhook git

    2024年02月08日
    浏览(372)
  • 云服务器使用jenkins+docker自动化部署SpringBoot项目

    docker 安装jenkins,就这一步都恶心死了 //拉取镜像,踩了很多坑,用其它版本的镜像插件一直安装失败,最后用的是lts版本(基础版) 用其它版本要么是连不上插件的下载地址,要么是插件下载不成功  docker pull jenkins/jenkins:lts  部署 docker run --user root -d -p 10240:8080 -p 10241:50

    2024年02月01日
    浏览(54)
  • Jenkins自动化构建部署前端项目(Linux+gitee)

    本文讲述了Jenkins自动化构建部署前端项目,内容包括Linux系统安装Jenkins、如何配置构建项目并发布到目标服务器。 因公司系统项目众多,前端项目打包麻烦,项目代码管理混乱,因此需要gitee+Jenkins做自动化构建,优化项目打包流程及代码管理。 本次教程可实现最简单的自动

    2024年02月03日
    浏览(56)
  • Jenkins + Gitee + Maven 自动化部署 Spring Boot

    目录 1、前言 1 .1、插件简介 1.2、插件安装 2、创建Maven项目 2.1、新建一个全新的项目 2.2、拷贝已有项目 3、项目配置 3.1 、General 3.2、源码管理 3.3、构建触发器 3.4、构建环境 3.5、Pre Steps 3.6、Build 1)Root POM 2)Goals and options 3)【高级】 3.7、Pre Steps 3.8、构建环境 3.9、Post Ste

    2024年02月08日
    浏览(67)
  • 前端项目打包和自动化部署(jenkins+gitee+nginx)

    1. 传统的开发模式 在传统的开发模式中,开发的整个过程是按部就班就行: 但是这种模式存在很大的弊端: 工作的不协调:开发人员在开发阶段,测试和运维人员其实是处于等待的状态。等到测试阶段,开发人员等待测试反馈bug,也会处于等待状态。 线上bug的隐患:项目准

    2024年02月01日
    浏览(46)
  • Jenkins自动化部署docker

    准备测试服务器docker环境 准备jdk环境 将上传jar包修改为 app.jar 对外暴露 1000 端口 启动jar 制作镜像 将上传的镜像先测试,我的jar包叫 sky-server-1.0-SNAPSHOT.jar 先将这个做成镜像 创建容器 将之前做的镜像运行 环境准备 前提需要Jenkins和Gitea这个要提前准备好。 1、配置Jenkins的M

    2024年01月17日
    浏览(58)
  • docker+jenkins 实现自动化部署

    工欲善其事必先利其器,所以前期的准备工作必须做好,那么我们要实现自动化部署,必须提前准备什么呢?哈哈哈,可能有一些小伙伴已经猜到了,我们需要一台自己的服务器,这里博主使用的自己够买一台腾讯云的轻量服务器,折扣完了才一百多块钱,当然小伙伴也可以

    2024年02月06日
    浏览(268)
  • docker+jenkins自动化部署springboot项目

    阿里云服务器1核2GB java 1.8.0._371 maven apache-maven3.8.8 git 1.8.3.1 docker和jenkins在一台服务器上,环境的配置,对于java和maven可以自己下载对应tar包进行配置,记得配置环境,也可以使用yum进行安装。记得配置/etc/profile后source一下: source /etc/profile Maven记得修改镜像!!! 在本地创建

    2024年02月03日
    浏览(47)
  • Jenkins+Docker 实现一键自动化部署项目

    1.安装Jenkins 注:因为Jenkins容器里的用户是Jenkins,而主机用户不是Jenkins,就算是root也一样会报错:/var/jenkins_home/copy_reference_file.log: Permission denied,这个时候就需要在主机上面给主机地址赋予访问Jenkins容器的权限,Jenkins内部用的是uid 1000的user。 -privileged=true让容器具有root权限

    2024年02月16日
    浏览(50)
  • docker+jenkins+dockerfile 自动化部署发布

    提示: 文章如有错误的地方请指出,以免误人子弟! 提示:以下是本篇文章正文内容,下面案例可供参考 下载镜像 下载maven maven 官网下载地址 或者使用命令下载 通过软件放到 linux 的目录下,这边放到Home目录下 解压 进到解压的目录下,创建项目的本地仓库文件夹并赋予读

    2024年02月05日
    浏览(46)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包