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 显示的页面

相关推荐
東雪蓮☆22 分钟前
深入理解 iptables:Linux 防火墙从入门到精通
linux·运维·网络
努力学习的小廉42 分钟前
深入了解linux系统—— 线程互斥
linux·运维·服务器
JioJio~z1 小时前
PLC通讯中遇到的实际场景
运维·服务器·网络
青衫客362 小时前
负载均衡之带权重的随机负载均衡算法详解与实现
运维·服务器·负载均衡
愚润求学4 小时前
【Linux】Socket编程——TCP版
linux·运维·服务器·c++·网络协议·tcp/ip
软件测试大叔4 小时前
ubuntu替换源为阿里源(修改ubuntu.source文件)
linux·运维·ubuntu
wheeldown5 小时前
【Linux】深度学习GCC的编译流程
linux·运维·服务器
GGGGGGGGGGGGGG.6 小时前
CI/CD 全链路实践:从 Git 基础到 Jenkins + GitLab 企业级部署
运维·git·ci/cd·云原生·gitlab·jenkins
007php0076 小时前
使用 Docker、Jenkins、Harbor 和 GitLab 构建 CI/CD 流水线
数据库·ci/cd·docker·容器·golang·gitlab·jenkins