专栏首页JavaEEspringboot项目打包&ngrok的使用

springboot项目打包&ngrok的使用

前言:

接触spring boot有一段时间了,但是一直未打包部署过spring boot项目,因为其内置tomcat,所以打包部署方式有所不同。还有ngrok,是一个类似于花生壳的内网穿透神器,本文也将介绍它的用法。

一、springboot项目打包部署:

1、在pom.xml中可以配置jar包的名字:

    <build>
        <finalName>love2</finalName>
        <plugins>
            <plugin>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-maven-plugin</artifactId>
            </plugin>
        </plugins>
    </build>

等下生成jar包的名字就叫做love2。

2、clean一下项目: 选中按项目run as maven clean

3、打包项目: 选中项目run as maven install

4、执行java -jar: 执行第三步控制台输出success后,在本地项目根目录的target目录下就有love2.jar。

image.png

love2.jar就是打包好的项目。我们先在本地启动一把,等下再看看Linux服务器上如何启动。 在cmd窗口进入love2.jar所在目录,然后执行java jar love2.jar

image.png

5、访问项目: 启动成功后,访问localhost:8082/baby,本项目配置了端口为8082,baby是本项目路由。

image.png

注意:配置8082端口是因为我Linux服务器上有一个8080端口的项目了,配置8082是为了等下使用ngrok的方便。

6、部署到Linux服务器中: 部署到服务器中很简单,只需要把love2.jar上传到服务器,然后执行nohup java -jar love2.jar &即可。&表示后台运行。

image.png

7、访问服务器上的项目:

image.png

我们都知道直接通过服务器的IP访问项目不太安全,买域名要备案又有点麻烦,又或者根本没买服务器,但是项目又想让别人也能访问,那么,ngrok就可以帮到你,接下来看看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那个项目。

电脑访问

手机访问

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就可以后台运行。

(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,就不会受限了。

总结:

spring boot项目打包部署较为简单,maven install,然后把打好的jar包上传到服务器用nohup java -jar命令启动即可。至于ngrok的使用,本文也详细介绍了在windows和centos中用法,步骤也不复杂,反正听说比花生壳更简单。

以上内容属于个人笔记整理,如有错误,欢迎批评指正!

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • springboot整合kaptcha验证码前言:开发工具及技术:正式开始:总结:

    贪挽懒月
  • 阻塞队列 BlockingQueue

    阻塞队列,英文名BlockingQueue,顾名思义,首先它是一个队列。阻塞就是说在多线程环境下,线程在某些情况下会被挂起,这就是阻塞,一旦满足条件,又会被唤醒...

    贪挽懒月
  • Intellij IDEA 使用教程

    正所谓工欲善其事,必先利其器,身为码农的我们,拥有得心应手的编辑器就好比如鱼得水,在万行代码中取bug首级就如观鱼赏花!IDEA就堪称是当世之神兵,自诩为最智能...

    贪挽懒月
  • windows 2008r2+php5.6.28环境搭建详细过程

    勾选ASP.NET会弹出以下窗口添加所需的角色服务,勾选CGI(这里根据个人情况勾选,CGI是必选的,否则PHP不生效的)

    砸漏
  • Ubuntu18.04下解决Qt出现qt.qpa.plugin:Could not load the Qt platform plugin “xcb“问题

    根据问题描述,虽然能够找到但是不能加载Qt平台插件“xcb”,虽然接下来又说重新安装可能能够解决,这个可能的话,还是尽量作为最下的选择吧。

    砸漏
  • OpenCV二值化adaptiveThreshold与threshold的对比

    前一篇文章《Android划矩形截屏并加入OCR识别》在安卓中我们做了划矩形截图进行OCR实识,其中只是简单的进行了二值化的处理然后就传入图片识别,本来计划把图...

    Vaccae
  • Excel批量插入照片

    在制作档案时,常常需要插入相应的照片以便管理,那你知道如何快速插入员工的照片吗?不知道的小伙伴一定要看下去哦。

    小海怪的互联网
  • 用node.js从零开始去写一个简单的爬虫

    如果你不会Python语言,正好又是一个node.js小白,看完这篇文章之后,一定会觉得受益匪浅,感受到自己又新get到了一门技能,如何用node.js从零开始...

    王小婷
  • 用上这门黑科技,运维从此不背锅!

    近年来,企业业务规模的急剧上升,导致运维场景的复杂性也呈指数性上升,原本依靠人工经验的运维工作难度也变得更具有挑战性,而基于机器学习的智能运维(AIOps)开始...

    iMike
  • 喜报|广州大学与安恒信息正式签约 共建人工智能安全联合实验室

    5月14日, 广州大学和安恒信息正式合作签约,为“人工智能安全联合实验室”(以下简称“联合实验室”)成立揭牌。

    安恒信息

扫码关注云+社区

领取腾讯云代金券