jenkins系列_使用scp命令进行远程文件复制遇到的坑
转自:https://blog.csdn.net/kingboyworld/article/details/78905553
一、场景介绍
项目为微服务项目,使用jenkins进行统一部署。基本思路是
1. 在jenkins服务器上使用git插件拉取项目代码
2. 使用gradle进行打包
3. 将打好的jar包使用scp远程复制到部署服务器上
4. 执行远程shell脚本启动jar包项目
二、坑
scp命令copy文件时需要输入密码,然而shell脚本中对密码输入的处理还是很麻烦的。有以下两种方式:
1.使用密码插件,自动输入密码
或
2.使服务器之间相互信任,这样scp命令就不需要输入密码了
第一种方式,网上搜了下,感觉很麻烦,就没有去尝试了。第二种方式的配置过程如下:
1.复制jenkins服务器用户目录下的.ssh/id_rsa.pub中的内容
(没有这个文件的话可以网上查查怎么生成)。
cat ~/.ssh/id_rsa.pub
2.将上面复制的内容添加到应用服务器(也就是需要远程部署应用的服务器)的.ssh/authorized_keys文件中。
一般这个文件初始都是空的,直接使用vim命令复制进去就好。
#如果文件是空的可以直接使用以下命令复制进去
echo 复制的内容 >> ~/.ssh/authorized_keys
这个时候环境配置就准备好了。
3.这个时候使用jenkins构建时,仍然失败,提示权限不够,这就是坑。
原因:虽然我们已经配置了相许信任,但是第一次使用scp命令需要先自己手动在shell中端中执行一次才可以。那么我们使用scp随意复制个文件过去,输入密码。
之后再用jenkins复制文件就免输密码了。
jenkins系列_使用scp命令进行远程文件复制遇到的坑的更多相关文章
- scp命令获取远程文件
一.scp是什么? scp是secure copy的简写,用于在Linux下进行远程拷贝文件的命令,和它类似的命令有cp,不过cp只是在本机进行拷贝不能跨服务器,而且scp传输是加密的,可能会稍微影响 ...
- mac 连接linux服务器,用scp命令实现本地文件与服务器文件之间的互相传输
mac连接linux服务器 打开终端,切换到root权限下,切换root权限命令:sudo -i 通过ssh命令连接linux服务器:ssh root@ip地址(root是账户名) 然后根据提示输入密 ...
- scp 远程文件复制命令
scp 远程文件复制工具 1.命令功能 scp用户在不同linux主机间复制文件,他采用ssh协议保障复制的安全性.scp复制是全量完整复制,效率不高,使用与第一次复制,增量复制建议rsync命令. ...
- Linux SSh scp使用【远程文件/目录的传输】
一:Linux ssh scp的简介及作用: scp就是secure copy的简写,用于在linux下进行远程拷贝文件的命令,和它类似的命令有cp,不过cp只是在本机进行拷贝不能跨服务器. 有时我们 ...
- 使用openssh-clients的scp命令来传输文件
了解openssh-client是请参阅:https://blog.csdn.net/u010215256/article/details/53239905 了解scp命令来传输文件请参阅:https ...
- ssh tar 命令把远程文件拉回来或推过去
ssh tar 命令把远程文件拉回来或推过去 2010-09-11 21:55:35 分类: LINUX 登录22后tar 压缩/var/log目录输出到标准输入通过管道传到本地22_log. ...
- linux命令之scp远程文件复制
scp是linux中功能最强大的文件传输命令,可以实现从本地到远程以及远程到本地的轻松文件传输操作.下面简单的讲解一些关于scp命令的操作,给有用的人一些参考: 首先是本地到远程的操作:操作的格式如下 ...
- 【终端使用】"scp"命令,远程拷贝文件
一."scp"命令的使用 "scp"命令,是"secure copy (remote file copy program)"英文单词的缩写, ...
- Linux 用 sftp scp命令 互传文件
sftp它类似于 ftp, 但它进行加密传输,比FTP有更高的安全性. sftp 是SSH服务的子程序 常用命令 pwd 查看当前工作目录 ls 查看远程当前目录下的所以文件或者目录信息 lls 查看 ...
随机推荐
- Making a view in a listview invisible android
问题: I have a ListView that's using a custom adapter. I want to dynamically add/remove items from the ...
- JDK8 Java 中遇到null 和为空的情况,使用Optional来解决。
空指针是我们最常见也最讨厌的异常,写过 Java 程序的同学,一般都遇到过 NullPointerException :) 初识null 详细可以参考[jdk 1.6 Java.lang.Null.P ...
- c#属性 ——面向对象
String. Format(字符串格式化输出) 相当于Console.WriteLine(字符串格式化输出); 而String.Format是返回一个字符串 属性: 因为把字段全public,会非常 ...
- 游戏设计思考:对COK的理解和思考
转自:http://www.gameres.com/804983.html 一.前言 发此文的起因是最近加入了一个游戏研究群,受到大家对游戏研究热情的感染,也想将自己对游戏的理解和感悟发出来和大家一起 ...
- CRM 2016 一个IFrame页面,执行另一IFrame页面的函数
如果IFrame_A 想执行 IFrame_B 中 RefreshSelf() 函数,可以按以下方法写: 此js代码写在 IFrame_A 中 parent.Xrm.Page.getControl( ...
- NT平台ADSL拨号连接密码恢复原理
NT平台拨号连接密码恢复原理 创建时间:2004-11-08 更新时间:2004-11-12文章属性:原创文章提交:eyas (eyas_at_xfocus.org)NT平台拨号连接密码恢复原理Aut ...
- 你创建的OpenStack高性能虚拟机能实现“零损耗”么?
使用默认参数创建的虚拟机,虚拟机的VCPU在物理CPU不同核心之间动态调度,另外,由于Linux还可能会将软中断,内存交换等进程调度到虚拟机正在使用的物理核心上,这些因素导致这些虚拟机相对于物理机的计 ...
- #151: 每一本正式出版的图书都有一个ISBN号码与之对应,ISBN码包括9位数字、1位识别码和3位分隔符,其规定格式如“x-xxx-x
试题描述 每一本正式出版的图书都有一个ISBN号码与之对应,ISBN码包括9位数字.1位识别码和3位分隔符,其规定格式如“x-xxx-xxxxx-x”,其中符号“-”是分隔符(键盘上的减号),最后一位 ...
- 理解 with递归调用 Sqlserver 树查询
--with用法 --可以这么理解 with SQL语句变量或者叫临时表名 as( SQL语句 ) select * from SQL语句变量或者叫临时表名 --递归调用 with CTE as( s ...
- HPROF - Heap Profile
基于动态链接库实现,可用于性能分析,锁内容.诊断memory leak问题等.获得堆开辟信息 java -agentlib:hprof=heap=sites ToBeProfiledClass 帮助文 ...