首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

不同环境下 Jenkins 调用 shell 脚本管理 docker 容器

一、生产环境 Jenkins 使用 ssh-copy-id 实现 SSH 无密码登录,实现方式如下: ssh-keygen 产生公钥与私钥对. ssh-copy-id 将本机的公钥复制到远程机器的 authorized_keys...3、将你的麦克风输出到远程计算机的扬声器 dd if=/dev/dsp | ssh -c arcfour -C username@host dd of=/dev/dsp 这样来自你麦克风端口的声音将在SSH...6、通过中间主机建立SSH连接 ssh -t reachable_host ssh unreachable_host Unreachable_host表示从本地网络无法直接访问的主机,但可以从reachable_host...13、通过SSH运行复杂的远程shell命令 ssh host -l user $(<cmd.txt) 更具移植性的版本: ssh host -l user “`cat cmd.txt`” 14、通过SSH...SSH登录,注意,如果在本地机器的~/.ssh目录下已经有一个SSH密钥对,ssh-keygen命令生成的新密钥可能会覆盖它们,ssh-copy-id将密钥复制到远程主机,并追加到远程账号的~/.ssh

1.6K20

喝杯咖啡,一键部署完成!(建议收藏)

比如拉取 Gitlab 仓库代码的插件、远程执行命令和拷贝文件的插件。 Jenkins 开始运行一个任务时,通过 Git 插件从 Gitlab 仓库拉取代码到本地目录。...Jenkins 通过 JDK 和 Maven 工具对 Java 代码进行打包部署。 Jenkins 通过 SSH 插件执行远程命令,将包进行备份、清理操作。...Jenkins 将 JAR 包拷贝到远程服务器的固定目录下。 Jenkins 执行远程命令,更新服务。...Jenkins 通过 插件 发送命令到应用服务器上执行指定的脚本 配置远程执行脚本的命令 echo "部署 jar 包" cd /nfs-data/wukong/ nohup sudo sh restart.sh...nohup 命令用于将脚本在后台运行,即使终端会话结束,脚本仍然继续运行。 远程服务器上创建脚本 如果想要 jenkins 执行远程服务器上的脚本,则需要先在远程服务器上创建一个可执行的脚本。

36410
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    2021年排名前85的DevOps面试问答

    用户可以随时运行Git提取来更新远程跟踪分支 尝试将远程更改与本地更改合并 命令 -git fetch origin git fetch –全部 命令 -git pull...它允许对管道进行审核跟踪。 管道只有一个真实来源,可以查看和编辑。 29.以下哪个命令从命令行运行Jenkins?...除非您有条件语句,例如“ when:…”,否则始终对变量使用{{}}。这是因为条件语句是通过Jinja运行的,而Jinja会解析表达式。...Nagios的Nagios远程插件执行器(NPRE)是什么意思? Nagios远程插件执行器(NPRE)使您可以在Linux / Unix计算机上执行Nagios插件。...您可以监视远程计算机指标(磁盘使用情况,CPU负载等) 该 check_npre 插件驻留在本地监控机上 在远程Linux / Unix计算机上运行的 NPRE守护程序 77.

    6.8K30

    .Net在Windows上使用Jenkins做CICD的那些事

    在远程传送并远程执行命令我折腾得最久,开始想着用FTP与Telnet,谁知道Telnet命令没有附带账号密码参数,脚本不好写,后改成PsExec.exe,使用过程中很多奇怪的问题,后来不得不去折腾OpenSSH...  依赖没有规范化对软件工程主要带来以下几点影响: 缺少代码或者代码路径不一致则无法正常编译通过 对于新人同事不友好 实现CI/CD会有很大的阻力   解决方案与顺序: 整理组件库到统一解决方案,日后有需要拆分再按需拆分.../PowerShell/Win32-OpenSSH/releases 远程传输与远程执行命令  物理部署图 ?   ...如果没有配置好,接下来的应用项目可能会编译时还原包失败导致无法编译通过。 无法通过,可以在运行输入mmc打开策略编辑器,并在计算机配置-[windows设置]-[安全设置]-[本地策略]-[用户权限分配]-[作为服务登录],填写administrator

    1.7K31

    在 ubuntu 中愉快的安装 Jenkins

    su root 切换用户 现在可以使用 root 但是无法远程连接,还需要设置/etc/ssh/sshd_config中 PermitRootLogin 的值为 yes 设置后记得重启 ssh 服务...:查看系统版本 ifconfig:查看 IP 等信息 ps:显示正在运行中的进程的信息 学习更多 vim 常用的几个命令: i:输入模式(使用 vim 打开文件后先按一些 i,然后再移动光标输入字符...echo y|sudo apt-get install jenkins Jenkins的运行 Jenkins 是以服务的形式运行的,故可使用如下民两个管理服务,默认使用 8080 端口 启动服务:sudo...正式开启 Jenkins 之旅 踩过的坑 shell 脚本无法访问环境变量 解决方案为:首行添加 #!.../bin/bash -ilex,此为我安装 nvm 后在终端可以访问, Jenkins 构建 shell 脚本时无法访问的解决方案 通过-i 参数和-l 参数让 bash 为 login shell

    1.8K10

    Jenkins教程

    image 单台 Jenkins 服务器不足以满足某些要求,例如: 有时您可能需要几个不同的环境来测试您的构建。单个 Jenkins 服务器无法完成此操作。...如果定期构建更大、更重的项目,则单个 Jenkins 服务器将无法简单地处理整个负载。undefined为了满足上述需求,引入了 Jenkins 分布式架构。...Jenkins 的主节点也可以直接执行构建作业。 Jenkins 从节点 从节点是在远程计算机上运行的 Java 可执行文件。...以下是 Jenkins 从节点的特点: 接收来自 Jenkins 主接点的请求。 从节点可以在各种操作系统上运行。 从节点的工作就是按照命令执行,包括执行主节点分配的构建作业。...在这个配置页面上,您还可以选择添加构建步骤来执行额外的操作,例如运行脚本。我将执行一个 shell 脚本。 image 这将为您提供一个文本框,您可以在其中添加所需的任何命令。

    1.6K20

    Jenkins概念及安装配置教程(三)

    启用“永久代理”设置,以便代理对 Jenkins 来说是永久的。 在这一步中,您需要输入节点从机的详细信息。No (#) of executors是 slave 可以并行运行的作业数。...Labels是从站的标识符,如果您想在该特定从站上执行作业(通过 Jenkins 管道),它很有用。 远程根目录是将存储 agent.jar 的位置,它可以指向您计算机中的任何目录。...在我们的例子中,我们将远程根目录设置为C:\Jenkins_Slave. 在使用中,您可以选择“尽可能使用此节点”。...单击运行以启动应用程序。 如您所见,名为“Slave”的 Agent 的状态为已连接。同样可以通过查看相应节点的状态来验证。 或者,如果要在无头模式下使用代理,则可以执行以下命令。...由于新代理已启动并正在运行,您现在可以在“从属”节点上执行作业。

    28240

    记一次在Windows10桌面环境搭建Jekins的吐血经历

    : Cannot run program "sh" 显然,Windows下的shell环境是cmd.exe,而上述打包命令并不能直接运行。...到这里还算顺利,在安装了Win32-OpenSSH之后可以通过scp命令将文件传输到远程主机。...但是在执行scp命令时必须输入密码,显然在Jenkins中要实现一键部署时是无法执行输入密码这个动作的,因此就需要实现本地Windows主机与远程Linux主机之间的免密传输。...另外,使用Cygwin提供的sshpass命令明确指定密码也同样不能成功! 显然,如果无法避开手动输入密码这个步骤,是无法在Jenkins中实现一键部署的。 ?...最后总结 如下,对在Windows环境执行Unix/Linux命令做一下小小的总结。

    1.9K10

    Windows 下的 SSH 管理工具: 深入解析 start-ssh-agent.cmd

    一、背景与目标在计算机网络和分布式系统中,SSH(Secure Shell)是用于通过非安全网络对另一台计算机进行安全访问的协议。...对于开发人员来说,SSH 允许他们通过安全的方式访问远程服务器,执行命令,传输文件,甚至进行端口转发。为了确保安全,SSH 通常通过密钥对进行身份验证。...实际案例假设你正在配置 Jenkins CI 环境,该环境运行在 Windows 服务器上,需要通过 SSH 密钥访问多个 Git 仓库。...在这种情况下,你可以在 Jenkins 构建步骤中先运行 start-ssh-agent.cmd,使得所有 SSH 操作都可以无缝进行,提升构建的自动化程度。...无法找到 ssh-agent 命令很多开发人员在使用 start-ssh-agent.cmd 时会遇到“无法找到 ssh-agent 命令”的错误。

    10400

    Jenkins 配合 Kubernetes 实现服务持续集成的实践和建议

    Jenkins,已经习惯了这种使用方式,Jenkins本身呢,只是执行一些命令,本身不会耗费太多资源,不需要多个副本和横向扩展的能力,把需要持续交付的服务实现容器化再说吧。...,而放到Pod 中可能会出现无法 docker build ,当然这也是可以解决的,因为 docker 本身是 B/S 架构,你可以通过在镜像内部挂载 docker 命令,调用宿主机 docker socket...,jenkins 拉取代码、maven 编译; 这里假设你已经完成 Jenkins 安装、远程工具、java 编译环境配置等。...比较建议每次镜像构建完成之后,通过  Jenkins 配置命令删除没有运行的镜像。 具体根据使用场景处理这些中间产物。...「麻雀虽小五脏俱全」一个项目功能不多,但是少不了 configmap、deployment、甚至 service,Jenkins 在打包过程肯定要涉及到对这些文件的修改,问题来了,这些文件如何存放呢?

    1.8K20

    使用Jenkins一键打包部署SpringBoot应用,就是这么6!

    我们可以用Jenkins来构建和部署我们的项目,比如说从我们的代码仓库获取代码,然后将我们的代码打包成可执行的文件,之后通过远程的ssh工具执行脚本来运行我们的项目。...确保以下插件被正确安装: 根据角色管理权限的插件:Role-based Authorization Strategy 远程使用ssh的插件:SSH plugin 通过系统管理->全局工具配置来进行全局工具的配置...选择我们的maven版本,然后设置maven命令和指定pom文件位置: ? 之后添加一个执行远程shell脚本的构建,用于在我们的镜像打包完成后执行启动Docker容器的.sh脚本: ?...需要设置执行的shell命令如下:/mydata/sh/mall-tiny-jenkins.sh ? 之后点击保存操作,我们的任务就创建完成了,在任务列表中我们可以点击运行来执行该任务; ?...我们可以通过控制台输出来查看整个任务的执行过程: ? 运行成功后,访问该地址即可查看API文档:http://192.168.6.132:8088/swagger-ui.html ?

    1.5K11

    DevOps工程师:30多个面试问题及解答

    Secure Shell(或 SSH)是一种命令行管理协议,使用户能够通过网络连接和控制远程服务器。 安全加密的SSH协议取代了以前流行且不安全的Telnet。...通过这样做,可以确保与远程服务器的通信是加密的。 12. 如何使用 Git 将文件从本地计算机推送到 GitHub 存储库?...由于 Ansible 的无代理特性,无需在托管远程节点的服务器上进行安装。因此,无需在管理远程节点时运行任何后台进程。...34.解释Docker的架构 Docker 在客户端-服务器架构上运行。 命令由 Docker 客户端服务运行。...REST API 用于在将命令发送到 Docker 守护程序(服务器)之前对其进行翻译。 为了创建 Docker 映像并运行 Docker 容器,Docker 守护进程接受请求并与操作系统进行通信。

    59620

    CI&CD夺命十三剑5-Jenkins分布式环境搭建及多节点运行

    Agent节点:也称slave节点,是通过Jenkins Agent(代理)连接到Master节点的计算机,它们执行来自Master节点的作业并将结果返回给Master节点。...如果对Jenkins的使用量有要求,可以先添加一些节点,然后在需要的时候再添加更多节点。 提高性能:在集中式环境中,Jenkins会变得拥挤,当多个任务同时运行时,会导致性能下降。...--permanent --add-port 42730/tcp firewall-cmd --reload 再次执行连接命令后,连接成功 但是这种启动方式会一直处于前台运行,此时终端窗口无法再进行其他操作...,项目的路径是写死的:/home/jenkins/workspace/开普勒-前端,在主节点运行时确实有这个路径,也能够正常运行; 但是我在配置从节点时设置的远程工作目录是:/home/jenkins/...项目构建报错问题解决 解决方式有两种: 一种是修改从节点配置,将远程工作目录路径去掉一层workspace目录; 第二种是通过全局变量$WORKSPACE来声明工作目录; 全局变量 我用的是第二种,将构建步骤中原本的

    2K21

    从0搭建属于自己的Jenkins持续集成平台

    前言   Jenkins在日常工作中占据了一个非常重要的角色,帮助我们节省了大量用于构建的时间。有些公司有运维大哥对Jenkins进行维护,如果没有那只能自己动手了。...前期准备 centos7 服务器一台 确认是否能安装docker  Docker要求CentOS系统的内核版本高于3.10.通过uname -r命令查看你当前的内核版本。...[root@CentOS home]# 把玩jenkins docker镜像遇到的volume权限问题  在运行启动jenkins的命令时,可能会出现jenkins无法启动情况。...需要删除旧容器重新运行。 docker rm jenkins  运行命令加入了-u 0重新运行。...编写`jenkinsfile`文件   核心思想是,根据不同的分支使用不同的打包命令,发送到不同的服务器进行运行。

    1K41

    3天学会Jenkins_6_管道或流水线教程之Jenkinsfile示例

    在Jenkins管道中,每个任务或事件都至少对一个或多个事件具有某种依赖性。 ? 上图代表Jenkins的连续交付管道。它包含一组称为构建,部署,测试和发布的状态。...它还涉及以可靠和可重复的方式开发软件,以及通过测试和部署的多个阶段对构建的软件进行升级。 在本节中,你将学到: 什么是Jenkins管道? 什么是JenkinsFile?...如果你的服务器经历了无法预料的重启,管道将自动恢复 交互:你可以暂停管道进程并使其等待恢复,直到有来自用户的输入 多任务:Jenkins Pipelines支持大项目。...你可以运行多个任务(job),甚至可以在循环中使用管道 6 Jenkins管道相关概念 Jenkins 安装和运行的地方,它负责解析 job 脚本,处理任务,调度计算资源 其他常用概念和语法(以声明式方式...点击保存 编译并查看记录 8 Freestyle与Pipeline区别 调度方式: pipeline:通过结构化pipeline 语法进行调度,易于理解与阅读 freestyle:通过jenkins

    4K20
    领券