jenkins 远程执行 定时 执行shell

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

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

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

Jenkins 远程执行简介

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

1. 使用 Docker 安装 Jenkins

可能需要魔法上网

bash 复制代码
docker pull jenkins/jenkins:lts-jdk17

1.1 运行 Jenkins

bash 复制代码
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 显示的页面

相关推荐
资讯第一线4 小时前
Windows系统工具:WinToolsPlus 之 SQL Server Suspect/质疑/置疑/可疑/单用户等 修复
运维
惊起白鸽4504 小时前
LVS负载均衡
运维·负载均衡·lvs
伤不起bb6 小时前
NoSQL 之 Redis 配置与优化
linux·运维·数据库·redis·nosql
广东数字化转型6 小时前
nginx怎么使用nginx-rtmp-module模块实现直播间功能
linux·运维·nginx
love530love6 小时前
【笔记】在 MSYS2(MINGW64)中正确安装 Rust
运维·开发语言·人工智能·windows·笔记·python·rust
啵啵学习6 小时前
Linux 里 su 和 sudo 命令这两个有什么不一样?
linux·运维·服务器·单片机·ubuntu·centos·嵌入式
数字芯片实验室7 小时前
寄存器模型生成:从手工到自动化
运维·自动化
冰橙子id8 小时前
linux——磁盘和文件系统管理
linux·运维·服务器
咕噜企业签名分发-淼淼8 小时前
应用app的服务器如何增加高并发
运维·服务器
b***25118 小时前
18650锂电池组点焊机:高效组装锂电池的关键工具|比斯特自动化
运维·自动化