通过Jenkins在远程服务器上执行shell脚本
1、Jenkins安装Publish over SSH插件
下载安装Publish over SSH插件
2、配置服务器相关信息
要先在jenkins所在的机器上生成秘钥。生成方式为:
ssh-keygen -t rsa #产生公钥与私钥对
因为没加密码所以一路enter完成。此时在装有Jenkins服务器上的目录 /root/.ssh/文件夹下生成两个文件:
is_rsa 为密钥文件 id_rsa.pub 为公钥文件
网上大部分文件都通过以下语句将公钥文件复制到目标服务器:
ssh-copy-id -i /root/.ssh/id_rsa.pub root@10.51.xxx.xxx
或者通过 scp -P 2226 id_rsa.pub root@10.241.131.8:/root/.ssh/ 命令复制文件
直接复制粘贴也行
打开 系统管理——>系统设置,下拉到底部的Publish over SSH区域。
Passphrase:根据网上的资料说这里是生成秘钥时的密码,如果生成秘钥没有加密码,直接enter到底生成的,则这里不用填写。(保存后会有些·········表示空密码)。
Path to key:网上说这里填的是私钥的路径,没尝试,因为在下面填写了私钥key。
Key:私钥的值。要将前后的-----BEGIN RSA PRIVATE KEY-----和-----END RSA PRIVATE KEY-----带着。
点击SSH Servers的“增加”,新添目标服务器。
Name:你起的可以分辨服务器的名称。
Hostname:目标服务器的ip,一般服务器之间交互的话用内网ip就行。
Username:登录目标服务器的账号。
Remote Directory:将jenkins构建的文件发送到目标服务器的哪个文件夹下。
在Passphrase中添加服务器用户登录密码即可(这里没有使用Jenkins的ssh)
不需要复制密匙到远程服务器,只需要配置远程连接密码即可
配置完成后点击测试连接
3、在服务器上创建一个文件夹
创建一个 构建一个自由风格的软件项目
配置构建环境--选择ssh server
添加Exec Command---保存即可
点击构建:
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 分享4款.NET开源、免费、实用的商城系统
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 记一次.NET内存居高不下排查解决与启示
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了