当前位置:   article > 正文

Jenkins部署服务到远程服务器_jenkins部署到远程服务器

jenkins部署到远程服务器

1.需要安装pulish over ssh 插件
2.系统管理 -> 系统设置(全局设置和路径), 拉到最下面 找到 Pulish over SSH, 进行设置ssh key。

参考https://www.cnblogs.com/yechen2019/p/11529755.html


3.Transfers:

  Source files:源文件地址,地址的目录是相对于jenkins workspace的目录(如/var/jenkins_home/workspace/构建的任务名),如果只需要执行命令不需要传输文件的时候,此处可以为空。如果你需要 传输该目录下的所有文件,直接填 **/*, 如果只传单个文件直接填写文件名

  Remove prefix:去除的文件地址。在Source files输入框中填入的地址,会默认在服务器下创建相同的文件夹,所以需要将我们不需要的文件夹在这里剔除掉

  Remote directory:远程服务器接收文件的地址,会在Pulish over SSH系统配置的路径之后添加的目录。

  Exec command:文件传输任务执行完毕后,在远程服务器上执行的命令


远程执行shell脚本默认没有日志:

你需要把这个Verbose output in console勾上。

 

执行shell脚本中如果有docker build指定Dockerfile文件路径的方式会报错:

unable to prepare context: unable to evaluate symlinks in Dockerfile path: lstat /root/Dockerfile: no such file or directory


此时需要把脚本文件和Dockerfile文件放在同一个目录,并且cd到防止的目录文件夹,如下:

  1. cp -rf /home/jk_project/witness-app/$BUILD_NUMBER/witness/witness-app/Dockerfile /home/jk_project/witness-app
  2. cp -rf /home/jk_project/witness-app/$BUILD_NUMBER/witness/witness-app/target/witness-app.jar /home/jk_project/witness-app
  3. cd /home/jk_project/witness-app
  4. sh ./start.sh

Jenkins无法执行docker命令:

docker: error while loading shared libraries: libltdl.so.7: cannot open shared object file: No such file or directory

解决办法:

进入Jenkins启动后的镜像中,执行

apt-get update && apt-get install -y libltdl7 && apt-get update

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/AllinToyou/article/detail/551001
推荐阅读
相关标签
  

闽ICP备14008679号