jenkins 远程执行 定时 执行shell

#王者杯·14天创作挑战营·第1期#

jenkins 远程执行 定时 执行shell (使用 Docker 安装 Jenkins)

本文将介绍如何在 Docker 中安装 Jenkins,配置远程执行,并定时运行 Sqoop 作业。通过使用 Jenkins,我们可以轻松地自动化数据库操作,并定期执行数据同步任务。

Jenkins 是一个流行的开源自动化工具,广泛用于持续集成(CI)和持续交付(CD)工作流。通过 Jenkins,用户可以自动化各类任务,比如代码构建、测试、部署等。本文将介绍如何配置 Jenkins 以远程执行定时任务,并执行 Shell 脚本,从而实现自动化管理。

Jenkins 远程执行简介

Jenkins 支持远程执行任务,意味着我们可以在不同的机器上执行 Jenkins 作业。这是通过配置远程节点(Agent)来实现的。在实际应用中,远程执行可以帮助在不同的环境中进行任务执行,如在构建服务器、测试环境或生产环境中执行任务。

1. 使用 Docker 安装 Jenkins

可能需要魔法上网

docker pull jenkins/jenkins:lts-jdk17

在这里插入图片描述

1.1 运行 Jenkins

docker run -p 8080:8080 -p 50000:50000 --restart=on-failure -v jenkins_home:/var/jenkins_home jenkins/jenkins:lts-jdk17
  1. docker run
    这是启动 Docker 容器的基本命令。
  2. -p 8080:8080
    -p 是用于将容器的端口映射到宿主机的端口。
    8080:8080 表示将容器内的 8080 端口映射到宿主机的 8080 端口。这个端口通常用于访问 Jenkins 的 Web UI。
  3. -p 50000:50000
    50000:50000 将容器内的 50000 端口映射到宿主机的 50000 端口。这个端口通常用于 Jenkins 节点之间的通信,尤其是用于从 Jenkins 主节点向代理节点传输数据。
  4. –restart=on-failure
    –restart 选项配置容器的重启策略。
    on-failure 意味着当容器因为某些错误退出时(非正常退出),Docker 将自动重启该容器。你可以配置重启次数来避免无限重启。
  5. -v jenkins_home:/var/jenkins_home
    -v 用来创建一个 Docker 卷,将容器内的文件与主机上的目录或卷进行绑定。
    jenkins_home:/var/jenkins_home 表示将宿主机上的 jenkins_home 卷挂载到容器内的 /var/jenkins_home 目录。这个目录用于存储 Jenkins 的配置文件、插件和其他持久化数据,这样即使容器重启或删除,数据仍然得以保留。
  6. jenkins/jenkins:lts-jdk17
    jenkins/jenkins 是使用的 Docker 镜像名称,表示 Jenkins 官方镜像。
    lts-jdk17 是该镜像的标签,表示这是一个长期支持(LTS)版本的 Jenkins,并且基于 JDK 17。

在这里插入图片描述
具体 Docker 部署教程jenkins -->

1.2 启动 Jenkins

http://localhost:8088
在这里插入图片描述

1.3 安装 SSH 插件

在这里插入图片描述
主要安装

选择插件管理
在这里插入图片描述
在这里插入图片描述
报错不要管他。

1.4 凭证配置

凭证管理
在这里插入图片描述
添加凭证

主要是需要输入你需要访问的 linux 服务器饿用户名很密码 。
在这里插入图片描述

1.5 系统配置

用户名 root ,密码 root
在这里插入图片描述

2 新建一个软件项目

新建任务

在这里插入图片描述

Configure 配置任务

crontab 定时器

在这里插入图片描述

在这里插入图片描述

控制台输出

在这里插入图片描述

linux 显示的页面

在这里插入图片描述

### 配置 Jenkins 定时任务以拉取并构建 Gitee 仓库中的项目 为了实现 Jenkins定时任务来拉取并构建 Gitee 上的项目,可以通过以下方式完成: #### 1. 创建一个新的 Jenkins 项目 进入 Jenkins 主界面后点击 **新建任务** 或者 **New Item**,输入项目的名称,并选择适合的任务类型(如自由风格项目),然后点击确认。 #### 2. 配置源码管理部分 在新创建的项目配置页面中找到 **Source Code Management (SCM)** 节点。在这里选择 Git 并填写对应的 Gitee 仓库地址以及凭证信息[^2]。如果需要私有仓库,则需提前配置好 SSH 密钥或者用户名密码认证。 #### 3. 设置构建触发器 继续向下滚动至 **Build Triggers** 区域,在此勾选 **Poll SCM** 选项。这允许我们定义一个 cron 表达式的计划时间表用于定期扫描代码库的变化情况。例如,“H/5 * * * *”表示每五分钟检查一次是否有新的提交记录;而具体的表达式可以根据实际需求调整[^1]。 #### 4. 构建环境与步骤设定 确保已经安装好了 JDK、Maven 和其他必要的工具插件之后,在 Build 环节添加执行命令操作。如果是 Maven 工程的话,可以选择 Invoke top-level Maven targets 来调用 mvn clean install 这样的标准指令来进行编译打包等工作流处理。 #### 5. 后续动作规划 最后还可以进一步定制化整个流程的行为模式,比如将生成的艺术品存档起来以便后续分发使用,或者是直接推送到远程服务器上启动服务等等[^3]。这些都可以依据具体应用场景灵活组合应用。 以下是简单的脚本样例展示如何利用 shell 执行基本功能: ```bash #!/bin/bash echo "Start pulling code from gitee..." git pull origin master mvn clean package -DskipTests=true if [ $? -eq 0 ];then echo "Build success!" else echo "Build failed." fi ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

小Tomkk

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值