一个脚本直接将本地代码部署测试环境

我欲只争朝夕
发布于 2023-10-24 11:10
浏览
0收藏

前言

最近写了一个微服务项目,本地调试很麻烦,每次修改一部分都得把代码提交到仓库,再用Jenkins编译。整个流程感觉有点慢,想着改完代码执行一个脚本,直接编译并且将jar包发布到测试环境上。幸运的是win10已经支持ssh和scp命令了,所以我可以用scp命令来实现我的想法了,无图无真相

一个脚本直接将本地代码部署测试环境-鸿蒙开发者社区

ssh登陆Linux一般有两种形式1.用户名和密码(每次登陆都需要输入密码)2.用户名公钥

使用ssh和scp命令的前提是你本地的公钥配置在服务器上的authorized_keys文件中,过程如下。

创建SSH Key

在windows下查看【c盘->用户->自己的用户名->.ssh】下是否有id_rsa、id_rsa.pub文件,如果没有需要手动生成

ssh-keygen -t rsa -C "youremail@xx.com"

-t 指定密钥类型,默认即 rsa ,可以省略
-C 设置注释文字,比如你的邮箱,可以省略

接着一路回车,如果想设置密码,自己可以设置一下,如果成功的话【c盘>用户>自己的用户名>.ssh】目录已经生成好了,里面包括id_rsa(私钥)、id_rsa.pub(公钥)

把公钥追加在Linux服务器上的~/.ssh/authorized_keys的文件中即可通过公钥登陆

SSH

命令格式如下,可以不指定端口,默认为22

ssh -p <端口> <用户名>@<IP地址>

SCP

命令格式如下,可以不指定端口,默认为22

scp -P <端口> <filename> <用户名>@<IP地址>:<目标目录>

我直接写了一个bat脚本,每次改完代码执行脚本,编译打包发布一气呵成,scp命令传输文件很快。

deploy.bat

call gradle build -x test
cd ./build/libs
scp demo.jar username@ip:/opt/application/
cd ../../
@pause

gradle build -x test 这是gradle打包命令,你可以类比为maven的mvn clean package -DskipTests=true


文章转载自公众号:Java识堂

分类
标签
已于2023-10-24 11:10:05修改
收藏
回复
举报
回复
    相关推荐