前提:jenkins容器或jenkins所在宿主机本地已经生成ssh(ssh-keygen)
1. SSH插件下载与配置
1.1 下载Publish over SSH插件
- 系统管理---》管理插件
- 下载后的本地路径:$JENKINS_HOME/plugins/publish_over
1.2 全局配置SSH服务器
- 系统管理---》系统设置--》拉到底部Publish over SSH
- Passphrase和Key二选一即可 。Passphrase是密码方式登录服务器,Key是免密码方式登录服务器(具体步骤:将Jenkins所在机子的public_key添加到待部署服务器的~/.ssh/authorized_keys即可)。
- Remote Directory: 填写当前用户有权限操作的,并且必须是已经存在的路径(例如用户的主目录)。
- SSH服务器默认端口号是22,点击高级即可设置Port。
- 配置完成后,点击 Test Configuration 返回Success即证明Jenkins所在宿主机可以正常链接到待部署机。
- 备注1: 添加多个部署机器时,默认是使用之前配置的Passphrase或Key,如果配置不一样,只需在高级中勾选Use password authentication, or use a different key,重新填写即可。
- 备注2: 同时操作多台待部署服务器时,可以将Jenkins所在宿主机的public_key添加到所有待部署服务器上,这样jenkins配置中只需要填写一个Key就可以了而不必密码方式登录。
2. job配置
1. 构建环境中添加操作目标服务器
- 勾选 Send files or execute commands over SSH before the build starts,即在构建开始之前,通过SSH登录目标服务器进行操作。
- 勾选 Send files or execute commands over SSH after the build runs, 即在构建完成之后,通过SSH登录目标服务器进行操作。
2. 构建步骤中添加操作目标服务器
- 构建步骤选择: Send files or execute commands over SSH
- Remote directory:如果不存在则会基于配置的Remote Directory创建目录。
- Exec command是基于当前用户的主目录,而不是Remote Directory请注意!!。
网友评论