已经搭建好Gogs(https://www.cnblogs.com/congyinew/p/16115074.html),接下来就是想外网上传代码到Gogs

一、申请账号

https://open.oray.com/console

1.去官网申请开发者账号,申请成功之后添加应用,得到一个APP ID和APP KEY



2.点击创建好的应用,进入到应用管理页面,创建映射



3.添加树莓派Gogs的地址

IP地址为树莓派的内网地址,端口号为3000(Gogs默认端口号是3000,我搭建的时候没改,如果改了就用改了之后的端口号)

二、下载SDK文件

1.创建一个文件夹

mkdir PHTunnel
cd PHTunnel

2.用wget下载文件

wget https://down.oray.com/hsk/sdk/phtunnel-raspberrypi.zip

3.解压

unzip phtunnel-raspberrypi.zip

三、启动服务

1.先切换到root账号

su

否则会执行不成功

2.启动服务

我的树莓派是arm v7,就进入到对应的文件夹

必须给phtunnel权限,不然执行会报错

cd armv7-rpi2-linux-gnueabihf
chmod 777 phtunnel
APPID=12345 # APP ID是第一步申请账号时得到的,在那个网址可以找到
APPKEY=23456 # APP KEY为第一步申请账号时得到的
./phtunnel -i $APPID -k $APPKEY -l /tmp/PHTunnel.log -c /tmp/PHTunnel.json -p /tmp/PHTunnel.pid -r #APP ID和APP KEY为第一步申请账号时得到的

弹出这个图片就



之后弹出二维码,扫码授权登录

之后会有一个网址



P.S.看到这个网址才算成功,之前没有切换root账号,这个网址一直不出现

3.看教程是需要访问接口获取url的,因为之前启动服务的时候没有用后台运行模式,所以这个窗口还是被占用的,我这里是另外开了一个窗口ssh连接树莓派

curl http://127.0.0.1:16062/ora_service/getmgrurl



返回得到一个url,复制这个url在浏览器打开,显示花生壳管理页面,登录账号为刚刚扫码登录的授权账号



4.添加映射

这个映射我是启动服务前就创建好了,不过感觉这里再创建也没关系。如果有问题,可以把这一步提前,创建花生壳应用之后就直接添加映射。

有了映射就可以通过这个网址访问到树莓派的Gogs



5.在电脑端浏览器访问这个网址显示Gogs登录页面

手机使用流量访问这个网址显示Gogs登录页面

成功!

6.在linux系统中作为守护进程运行,让服务后台运行

./phtunnel -i $APPID -k $APPKEY -l /tmp/PHTunnel.log -c /tmp/PHTunnel.json -p /tmp/PHTunnel.pid -r -d

五、开机自启动

1.在/usr/lib/systemd/system创建phtunnel.service文件

cd /usr/lib/systemd/system

su

> phtunnel.service

chmod 777 phtunnel.service

su pi

2.编辑phtunnel.service内容如下

vim phtunnel.service

[Unit]
Description=phtunnel
[Service]
Type=simple
ExecStart=/home/pi/PHTunnel/armv7-rpi2-linux-gnueabihf/phtunnel -l /var/log/phtunnel.log -c /etc/phtunnel.json -r -i APPID -k APPKEY
RemainAfterExit=no
Restart=always
[Install]
WantedBy=network-online.target

其中ExecStar=后面跟的是phtunnel的路径

-i 填入创建应用时得到APPID

-k 填入创建应用时得到APPKEY

之后保存文件

3.使systemctl在系统启动时运行服务文件

systemctl daemon-reload # 如有修改service文件后需要重载

systemctl enable phtunnel

4.通过systemctl启动服务

systemctl start phtunnel

5.查看是否启动成功

systemctl status phtunnel



成功!

P.S.虽然能启动成功,但是首次启动时需要绑定账号这一步目前没发现别的方式,只能以前台的方式启动服务,获取二维码扫码登录,所以这块自启动貌似没啥用。

参考链接:

https://www.zuantouxc.cn/archives/609

https://shumeipai.nxez.com/2020/03/30/raspberry-pi-git-phtunnel-to-achieve-project-remote-management.html

最新文章

  1. 【Java EE 学习 48】【Hibernate学习第五天】【抓取策略】【二级缓存】【HQL】
  2. JVM内存管理------JAVA语言的内存管理概述
  3. C#------对SQLServer进行简单的增,删,改,查
  4. c#分页读取GB文本文件
  5. javascript正则表达式(一)
  6. ssh tunnel通道
  7. 一步一步学习Unity3d学习笔记系1.4单服模式架构
  8. How to Get Rid of /wordpress/ From your WordPress Site URL
  9. 有return的情况下try catch finally的执行顺序(最有说服力的总结)
  10. myeclipse快捷键收集整理
  11. ionic4 开发企业微信应用0
  12. Exception和解决方案
  13. RestFul风格API(Swagger)--从零开始Swagger
  14. 阿里云服务器晚上运行定时任务报Too many connections
  15. The 2018 ACM-ICPC Asia Beijing Regional Contest
  16. sql server常用字符串函数
  17. windows 下 redis安装
  18. TcxGrid 去除<No data to display>
  19. win7 LR11.0 启动controller报:Failed to create Online:无效指针
  20. DevExpress WPF入门指南:绑定编辑器对话框

热门文章

  1. CentOS7 搭建 PXE 安装系统
  2. ssr 学习总结
  3. 打开Access时电脑出现蓝屏,错误编号0x00000116的问题解决
  4. 记录一次阿里云ECS搭建代理服务器的过程
  5. JavaScript案例:短信验证码倒计时
  6. 一套 .NET开发的邮箱Mail开源库
  7. 为什么 .NET应用推荐使用 await、async异步编程?
  8. Android 杂项
  9. Jupyter notebook upload无法加载本地ipynb文件
  10. Microsoft Project 使用教程