jenkins进行自动化部署

   jenkins自动化部署 

hello,大家好,前文我们已经下载好我们的jenkins了,下面我们用jenkins来实现自动化部署啦!

一、下载插件

我们选择插件管理

一个是Maven Integration plugin,一个是 Publish Over SSH

这里因为作者已经下载好了,所以在Installed可以查找到

二、设置全局工具配置

maven和jdk下载可以去查看作者

Docker 安装Jenkins-CSDN博客这个博客

2.1maven

如果报403的话将自己挂载jenkins目录下面的config.xml文件中的

挂载的jenkins目录下创建一个mavenRepository文件并且赋权限

chmod 777 mavenRepository

将下载好maven中的/maven/apache-maven-3.9.6/conf/settings中的

还要配置一下镜像加速

作者将镜像放在下面了

    <mirror>
    <id>nexus-aliyun</id>
    <mirrorOf>central</mirrorOf>
    <name>Nexus aliyun</name>
    <url>http://maven.aliyun.com/nexus/content/groups/public/</url> 
    </mirror>

2.2jdk

2.3git

我们使用以下命令

yum install git

我们来查看一下是否下载成功

git --version

可以看到我们已经下载好了,默认下载的路径为 /usr/bin/git

三、系统配置

我们使用以下命令来生成ssh密钥

ssh-keygen -t rsa -b 4096 -f ~/.ssh/id_rsa

生成之后,路径就是在/root/.ssh/中

我们把id_rsa.pub中的公钥,粘贴到authorized_keys中,authorized_keys即授权公钥,是别人连接自己时,需要查询的,没有则不给连

完成之后保存,下面我们就要构建任务啦

四、任务构建

点击新建任务

名称需要自己填,然后点击确定

我们写完项目之后,作者使用的是springboot简单的一个项目写完之后要推送自己的git仓库

 shell脚本

group_name='yanshuling' 
app_name='yanshuling'
app_version='0.0.1.jar'
echo '----copy jar----'
docker stop ${app_name}
docker rm ${app_name}
docker rmi ${group_name}/${app_name}:${app_version}
cd /yuan/brook/yanshuling/
docker build -t ${group_name}/${app_name}:${app_version} .
docker run -p 8686:8080 --name ${app_name} \
        -e TZ="Asia/Shanghai" \
        -d ${group_name}/${app_name}:${app_version}
解释一下
  1. group_name='yanshuling':定义了一个变量 group_name 并赋值为 'yanshuling',用于指定 Docker 镜像的组名。

  2. app_name='yanshuling':定义了一个变量 app_name 并赋值为 'yanshuling',用于指定应用程序的名称。

  3. app_version='0.0.1.jar':定义了一个变量 app_version 并赋值为 '0.0.1.jar',用于指定应用程序的版本。

  4. echo '----copy jar----':输出一段文本 '----copy jar----',用于提示正在进行复制jar文件的操作。

  5. docker stop ${app_name}:停止名为 ${app_name} 的 Docker 容器。

  6. docker rm ${app_name}:删除名为 ${app_name} 的 Docker 容器。

  7. docker rmi ${group_name}/${app_name}:${app_version}:删除名为 ${group_name}/${app_name}:${app_version} 的 Docker 镜像。

  8. cd /yuan/brook/yanshuling/:切换目录到 /yuan/brook/,假设该目录是包含了你的 Java 应用程序代码和相关文件的目录。

  9. docker build -t ${group_name}/${app_name}:${app_version} .:基于当前目录下的 Dockerfile 构建一个名为 ${group_name}/${app_name}:${app_version} 的 Docker 镜像。

  10. docker run -p 8686:8080 --name ${app_name} \ ...:运行一个 Docker 容器,映射主机端口 8686 到容器内部的端口 8080,设置时区为 Asia/Shanghai,容器的名称为 ${app_name},镜像为 ${group_name}/${app_name}:${app_version}

构建

然后我们点击保存,点击开始构建,就成功啦,等到构建完成之后,我们可以看看自己的容器有没有启动成功哦~

感谢大家支持,我颜书凌会更加努力,看到这里的朋友,可以给我一个三连吗,跪谢!!

                                                                            

相关推荐

  1. jenkins自动化部署

    2024-03-31 12:14:01       44 阅读
  2. Jekins实现自动化部署

    2024-03-31 12:14:01       67 阅读
  3. Jenkins+Gitlab自动化部署配置】

    2024-03-31 12:14:01       48 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-03-31 12:14:01       98 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-03-31 12:14:01       106 阅读
  3. 在Django里面运行非项目文件

    2024-03-31 12:14:01       87 阅读
  4. Python语言-面向对象

    2024-03-31 12:14:01       96 阅读

热门阅读

  1. 带头双向循环链表的实现及注释教学

    2024-03-31 12:14:01       39 阅读
  2. 面试碰到的一些问题

    2024-03-31 12:14:01       34 阅读
  3. PHP - ZipArchive上传、下载实例

    2024-03-31 12:14:01       40 阅读
  4. HTML 中的 jQuery 事件处理与 Ajax 异步请求

    2024-03-31 12:14:01       37 阅读
  5. 【图像处理】-1.图像二值化

    2024-03-31 12:14:01       39 阅读
  6. Mysql 常用语句及用法记录

    2024-03-31 12:14:01       34 阅读
  7. 阿里云服务器初始化简记

    2024-03-31 12:14:01       30 阅读
  8. 微信小程序渲染有问题

    2024-03-31 12:14:01       41 阅读
  9. Python100个库分享第4个—difflib

    2024-03-31 12:14:01       41 阅读
  10. Golang基础-7

    2024-03-31 12:14:01       35 阅读
  11. C# serialPort

    2024-03-31 12:14:01       34 阅读
  12. Python 变量、数据类型、数据类型的转换介绍

    2024-03-31 12:14:01       37 阅读
  13. zookeeper--znode数据结构详解

    2024-03-31 12:14:01       39 阅读
  14. 大AI与小AI盈利点在哪里?AI积木与图谱视角

    2024-03-31 12:14:01       40 阅读
  15. TYPORA笔记

    2024-03-31 12:14:01       44 阅读