springboot项目打包&ngrok的使用(下)

简介: springboot项目打包&ngrok的使用

二、ngrok的使用:


1、ngrok简介:


ngrok就是一个内网穿透工具,说内网穿透可能还有点不明白,说白了就是一个可以把localhost转成一个网址,从而让别人也能访问你本地项目的工具。


2、ngork在Windows中的使用:


(1)、进入官网下载:


image.png


(2)、下载后解压:

image.png

双击解压后的ngrok.exe,会自动进入cmd命令窗口。


(3)、使用ngrok:


进入cmd窗口后,输入ngrok http 8082


image.png


然后别人的电脑或手机就可以通过上图中圈出的地址+项目路由访问到我们本地启动的love2那个项目。


image.png

image.png

3、ngrok在Linux中的使用:


在windows中使用是因为我们没买服务器又想让别人也能访问我们的项目,在Linux中使用是因为使用域名需要备案,有点麻烦,而我们又不想直接通过IP访问项目,因为把IP暴露出去不太安全。所以就可以通过ngrok来实现。


(1)、安装:


安装就不多说了,下载Linux版,然后用unzip命令解压即可。解压好后只有一个ngrok文件。


image.png


(2)、使用:


在ngrok的解压目录下,执行./ngrok http 8082,8082为项目的端口。执行成功如下图:


image.png


在手机或电脑上访问图中圈出的地址+项目路由即可访问到项目。本人测试已通过,此处不再截图。


(3)、后台运行:


让ngrok后台运行,可以按如下步骤执行:


安装screen:


yum install screen


开启新窗口:


screen


运行ngrok:


./ngrok http 8082


返回到主终端:


ctrl+A+D


image.png

这样就相当于让ngrok在后台运行了。


返回到ngrok的screen窗口:


screen -ls


screen -r xxxxx


image.png

这样就可以返回到ngrok运行的窗口,按ctrl+C就可以关闭ngrok,按ctrl+A+D就可以后台运行,screen -S xxxx -X quit就可退出xxxx的screen。


(4)、注册ngrok账号:


上面3个步骤就可以使用ngrok了,但是当我第二天访问这个项目时就出错了,错误如下:


image.png

意思就是没有注册账号就会限制使用的时长和绑定的个数。既然注册免费,那就注册一个。注册时如果一直提示failed to resolve captcha,那就用谷歌或GitHub账户登录。注册好后,在auth页面会你这个账户专属的token。


image.png


回到服务器,在ngrok的解压目录下执行./ngrok authtoken xxxx,xxxx就是刚才在antu页面复制的token。


image.png

这样就授权成功了,以后就不用再运行此命令了。再次使用ngrok,就不会受限了。


三、sunny ngrok的使用:


上面介绍了ngrok的使用,接下来看看sunny ngrok的使用。其实我也不太清楚ngrok和sunny ngrok的关系,但是经个人测试sunny ngrok访问更快,而且可以自定义访问前缀。正如上面所示ngrok的前缀是一串随机生成的字符串,而sunny ngrok可以自定义访问前缀。


1、注册:


进入sunny ngrok官网进行注册。


2、开通隧道:


注册登录后,点击      隧道管理 -----> 开通隧道,选择购买如下图的免费服务器:


image.png

然后会要求你填写相关信息,隧道协议选择HTTP,隧道名称随便起,前置域名自己定义,本地端口一般写127.0.0.1:8080,其他可不填。


3、安装客户端:


开通成功后,就会生成隧道id,复制好隧道id,等下要用。


image.png

然后点击上图中的“客户端下载”,这里介绍Linux客户端的使用。


image.png


我下载的是图中圈出的版本,然后上传到Linux服务器解压即可。


4、使用sunny ngrok:


在sunny ngrok 解压根目录下执行如下命令:


./sunny clientid xxxxxx


xxxxxx就是刚才在网页复制的id。这样就开启了sunny ngrok。开启后,回到网页点击隧道管理,再编辑,还可以绑定自己购买的域名。


image.png

然后将自己购买的域名通过CNAME的方式解析到服务器,


image.png

再次回到Linux服务器执行上述命令开启,就可以用自己购买的域名指向localhost:8080。


image.png


这时所有运行在8080端口的tomcat下的项目都可以通过这个自己购买的域名+项目路由进行访问。同样也可以用screen让其在后台运行。


总结:


spring boot项目打包部署较为简单,maven install,然后把打好的jar包上传到服务器用nohup java -jar命令启动即可。至于ngrok的使用,本文也详细介绍了在windows和centos中用法,步骤也不复杂,反正听说比花生壳更简单,而sunny ngrok似乎比ngrok更加强大,因为个人感觉访问速度更快,而且可以自定义前缀,比起ngrok的一串随机生成的字符串作为前缀,总更好看些。用法也不复杂,你值得拥有!







相关实践学习
基于函数计算快速搭建Hexo博客系统
本场景介绍如何使用阿里云函数计算服务命令行工具快速搭建一个Hexo博客。
相关文章
|
1月前
|
Java 开发工具 Maven
springboot项目打包为sdk供其他项目引用
springboot项目打包为sdk供其他项目引用
|
1月前
|
Java Maven
SpringBoot项目的用maven插件打包报Test错误
SpringBoot项目的用maven插件打包报Test错误
|
1月前
|
Java
springboot打包错误:Failed to execute goal org.apache.maven.plugins:maven-resources-plugin:3.2.0:resource
springboot打包错误:Failed to execute goal org.apache.maven.plugins:maven-resources-plugin:3.2.0:resource
32 0
|
5天前
|
运维 安全 Java
SpringBoot运维篇(打包,多环境,日志)
SpringBoot运维篇(打包,多环境,日志)
|
1月前
|
Java 关系型数据库 Docker
docker打包部署spring boot应用(mysql+jar+Nginx)
docker打包部署spring boot应用(mysql+jar+Nginx)
|
11天前
|
Java Linux Shell
docker 打包 springboot 项目快速入门
docker 打包 springboot 项目快速入门
32 0
|
1月前
|
SQL 监控 Java
nacos常见问题之dubbo+nacos+springboot3的native打包成功后运行出现异常如何解决
Nacos是阿里云开源的服务发现和配置管理平台,用于构建动态微服务应用架构;本汇总针对Nacos在实际应用中用户常遇到的问题进行了归纳和解答,旨在帮助开发者和运维人员高效解决使用Nacos时的各类疑难杂症。
|
1月前
|
Java 应用服务中间件 Shell
Springboot如何打包部署项目
Springboot如何打包部署项目
|
1月前
|
jenkins Java 持续交付
详解如何使用Jenkins一键打包部署SpringBoot项目
详解如何使用Jenkins一键打包部署SpringBoot项目
225 0
|
1月前
|
Java 应用服务中间件 Maven
SpringBoot分离资源文件打包
SpringBoot分离资源文件打包