树莓派配置简单java服务器并实现公网访问

安装java

  1. 前往oracle下载jdk8:https://www.oracle.com/java/technologies/javase/javase-jdk8-downloads.html,我的树莓派4B是目前最新的32位系统,就下载ARM32的版本,获取下载链接后可使用wget直接在命令行下载,省去发送文件给树莓派的过程。
  2. 下载完后,将压缩包移动到想要安装的位置,我放在了/usr/local/software里,使用sudo tar -zxvf 命令解压到当前文件夹,再使用sudo mv命令将解压出的文件夹重命名为好记的名字,我把它重命名为 jdk1.8.0_251
  3. 配置环境变量,sudo vim /etc/profile,添加以下内容:(将JAVA_HOME的具体路径更改为你安装jdk的路径)
    export JAVA_HOME=/usr/local/software/jdk1.8.0_251
    export PATH=.:${JAVA_HOME}/bin:$PATH
    export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
    
  4. 重新加载环境变量: source /etc/profile
  5. 输入java -version和javac -version,如出现以下类似内容则java安装成功
    java安装成功

安装Tomcat

对于使用 springboot的项目来说不需要自行安装 tomcat,直接使用 java命令运行 maven打包好的 jar包就好了

  1. 前往tomcat官网下载想要的版本:https://tomcat.apache.org/
  2. 同样解压缩到想要的位置,我依然放在/usr/local/software里,同样使用mv命令更改文件夹名
  3. 给pi用户赋予tomcat文件夹最高权限 sudo chmod -R 777 /usr/local/software/tomcat
  4. 进入tomcat的bin目录运行startup.sh,出现Tomcat started.字样即代表tomcat启动成功
    启动tomcat
  5. 通过ifconfig命令查询树莓派ip地址,使用无线连接看wlan0信息,有线则看eth0信息
    ip地址
  6. 同一局域网下访问树莓派IP:8080,比如我的访问地址就是192.168.0.106:8080,验证服务器是否成功安装,出现以下页面代表安装成功
    tomcat安装成功
  7. 成功后即可将项目war包上传到tomcat的webapp目录下,重启tomcat就可以通过项目名访问到项目了

使用花生壳实现通过公网访问树莓派

之前也在网上搜索过很多关于怎样实现公网访问树莓派的资料,但是大多因为时间久远及版本差异导致方法已不可行,于是尝试在那些资料的基础上继续琢磨并最终的得以实现。

使用不同环境及软件可能导致方法无效,所以列一下我的环境及软件版本:

  • 树莓派硬件:树莓派4B,2G内存
  • 树莓派系统:官网32位系统(2020-05-27更新),同一天更新的64位beta版系统已实测不可安装花生壳3.0.4版本,无法使用通过公网访问,如参考我的方法进行内网穿透则需要手动重新烧写官方32位系统
  • 网络环境:中国电信
  • 路由器:TP-LINK

通过路由器固定树莓派IP

首先要固定树莓派IP地址,以方便内网访问及进行花生壳相关设置,可以通过树莓派系统设置固定IP,也可以通过路由器MAC-IP绑定分配固定IP,我用的是后一种方法因为觉得不容易出现意外且修改方便。

  1. 进入路由器管理后台,依次打开DHCP服务器-客户端列表菜单,即可根据客户端名(raspberrypi)找到对应的MAC地址
    路由器后台
  2. 复制MAC地址,前往路由器的IP与MAC绑定-静态ARP绑定设置里增加单个条目,将IP和MAC绑定,保存后点击使所有条目生效,启用ARP绑定并点击保存,即可完成固定IP分配
    配置静态IP

在树莓派上安装花生壳

  1. 花生壳3.0.4 for 树莓派:http://download.oray.com/peanuthull/embed/phddns_3.0.4_systemd.deb(可直接使用wget下载)
    如链接失效则代表官方推出了新版,请前往花生壳官网下载最新版:https://hsk.oray.com/download/
    花生壳官方安装使用说明:http://service.oray.com/question/2680.html此说明版本较老,但仍有参考价值,其中有些不同的地方将在下文做出说明
  2. 安装方式同官方说明,但3.0.4版本的命令格式直接就是 sudo phddns stop(停止)|restart(重启) |status(状态)|version(版本)|reset(重置) ,必须要使用管理员权限才能执行命令
  3. 获取到SN码及之后的绑定到花生壳账号的操作请参考官方说明

花生壳控制台配置

  1. 通过b.oray.com登录自己的花生壳账号进入花生壳管理平台,进入页面

  2. 点击页面中的“+”号图片增加映射
    增加映射

  3. 一个用户可以免费设置两个映射,刚好一个用来配置SSH,一个用来访问8080,那么先来配置SSH:

    直接使用SSH服务的映射模板,选择注册时赠送的域名,端口使用动态端口,固定端口需要按年付费,动态端口只要这个映射存在就不会改变,只是分配的时候是动态分配的,需要注意的是配置的映射在一月内没有流量产生(即无人访问),映射会被自动删除,每人每月拥有1G免费流量。继续输入黑莓派在内网的IP地址,带宽和端口都不要更改,直接确定即可。

    添加SSH映射
    确定后需要等待一段较长的时间,之后可能会出现“rpc操作失败”这样的提示,此时继续点击确定按钮会提示“映射带宽数不足”,不要慌,重新点击左侧菜单,就会发现页面跳了一下,你配置的映射已经出现在里面了。
    在这里插入图片描述
    但此时如果直接使用putty连接可能依然会出现连接不上的问题,这时就需要回到管理页面,点击配置的映射右下角的操作-编辑,然后什么都不需要修改,直接再点击一次确定,经过一段时间等待后又会报“rpc操作失败”这个错误,不用管,再点确定,这时候就会提示“映射创建成功”了。此时再去访问就不会再报错了。
    putty连接设置
    在这里插入图片描述

实现局域网外访问树莓派的Tomcat服务器

有了前面配置SSH的经验,配置这个也就十分简单了

  1. 同样是到映射页面点击加号添加映射,这次在旁边的映射类型选择HTTP,此时会弹出应网监局要求需要付费,一年6元比买那些云服务器便宜多了
  2. 付费完后选择之前的那个免费域名,设置完内网主机映射到tomcat的8080端口,就可以确定了
    在这里插入图片描述
  3. 这时候同样会出现上文提到的“rpc操作失败”错误,请依然参考上文提及的处理方式进行解决,直到系统给出“映射创建成功”的提示
  4. 打开手机或者浏览器,直接访问你的域名,只要你的tomcat在运行,就可以访问到你的网站啦~
    外网访问服务器

配置花生壳服务开机启动

现在已经可以实现公网访问了,那么只要将花生壳加入开机启动就可以随时SSH打开服务器然后访问服务器了。

  1. 编辑/etc/rc.local文件
    sudo vim /etc/rc.local
    
  2. 在“exit 0”前 “fi” 后添加 phddns start &,这实际上就是启动花生壳服务的命令,命令后添加"&"是为了让该进程在后台启动,以防影响系统的正常启动,其他软件如需开机自启也可以在这两句话之间这么配置,只需添加相关命令即可。样式如下:
    fi
    phddns start &
    exit 0
    
  3. 这样系统就会在启动的时候自动在后台启动花生壳服务,但启动过程较为漫长,普遍在5分钟以上,启动完成后才可通过公网访问,不过考虑到树莓派的低功耗基本也不需要关机,所以还是可以接受的
  4. 出门在外没有电脑的话也可以用手机上的SSH软件连接树莓派,软件很多,我用的是ConnectBot,正常操作都可以完成,足够使用
  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值