最全用树莓派做服务器运行博客网页_树莓派跑网页,2024年最新看这一篇就够了

img
img

网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。

需要这份系统化的资料的朋友,可以添加戳这里获取

一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!

到此本地设置基本完成

3.树莓派服务器设置

有了静态网页了,我们下一步就是配置树莓派了,首先通过SSH连接树莓派,这里我使用的VSCode的remote - SSH工具来连接树莓派(VSCode,永远滴神,不接受反驳!),工具在VSCode内部git安装:

20210724211512

安装完成后我们通过树莓派的IP登录树莓派(树莓派要连接网络,且要获取对应的IP)

获取IP方法可以参考这篇文章:查看树莓派ip地址的几种方法

获取IP之后通过Remote远程登录(树莓派和PC要在同一个局域网下):在VSCode打开Remote

20210724214002

添加远程连接,按照如下格式输入登入IP和账号密码:

ssh + 树莓派用户名@树莓派IP地址

输入位置如下:

20210724214019

输入之后会提示在输入登录密码,输入即可登录树莓派,连接后打开终端,如下图

20210724214506

之后我么就可以输入shell指令来控制树莓派了,下面我们开始正式配置树莓派服务器!

配置步骤:

  • 更新树莓派源

打开树莓派镜像源列表 (此处用的vim编辑器,具体操作可以百度!不习惯可以将vim替换gedit)

sudo vim /etc/apt/sources.list

将内容替换为清华大学源(具体源需要上清华镜像站点搜索)

# 编辑 `/etc/apt/sources.list` 文件,删除原文件所有内容,用以下内容取代:
deb http://mirrors.tuna.tsinghua.edu.cn/raspbian/raspbian/ buster main non-free contrib rpi
deb-src http://mirrors.tuna.tsinghua.edu.cn/raspbian/raspbian/ buster main non-free contrib rpi

sudo vim /etc/apt/sources.list.d/raspi.list

替换为以下内容

# 编辑 `/etc/apt/sources.list.d/raspi.list` 文件,删除原文件所有内容,用以下内容取代:
deb http://mirrors.tuna.tsinghua.edu.cn/raspberrypi/ buster main ui

更新源

sudo apt-get update

更新完成

20210724215625

  • 安装git

安装指令,sudo指令要输入一下密码

sudo apt-get install git

查看版本

git --version

安装完成:现象和第一次下载不一样,但只要出现版本基本没问题

20210724220141

  • 安装nginx

下载指令

sudo apt-get install nginx

查看当前版本

nginx -v

此处我已经下载好,因为已经下载,所以现象和第一次下载不一样,但只要出现版本基本没问题

20210724215811

  • 建立远程Git仓库

在树莓端安装Git后,我们用Git建立一个远程仓库,用来作为本地PC提交网页源码的中间站,这样如果我们要更新网页,就不用登录到树莓派然后传文件这么麻烦的步骤,具体建立步骤如下:

  1. 创建一个新的文件夹
sudo mkdir /var/repo/	#创建一个文件夹
sudo chown -R $USER:$USER /var/repo/	#给分到用户组
sudo chmod -R 755 /var/repo/	#改变文件夹权限

  1. 文件夹建立后,改变当前路径到建立的文件夹,输入如下指令建立Git仓库(web_blog为自定义的名字)
cd /var/repo/
git init --bare web_blog.git

  • 映射仓库到另外一个文件夹

Git仓库创建完成后,我们需要再创建一个文件夹,用来做Nginx的根目录

sudo mkdir -p /var/www/hexo

并修改目录权限

sudo chown -R $USER:$USER /var/www/hexo
sudo chmod -R 755 /var/www/hexo

然后在仓库 web_blog 下创建一个钩子,将静态 HTML 文件传送到树莓派服务器的根目录下,即 /var/www/hexo下面,钩子代码如下:

#使用vim在仓库下创建一个新的钩子文件
sudo vim /var/repo/web_blog.git/hooks/post-receive

在文件下添加如下shell脚本文件 (因为使用的是Vim编辑器,具体的操作方式需要自行百度了解一下!)

#!/bin/bash
git --work-tree=/var/www/hexo --git-dir=/var/repo/web_blog.git checkout -f

保存退出文件后,改变文件权限,让该文件变为可执行文件。

sudo chmod +x /var/repo/web_blog.git/hooks/post-receive

  • Nginx网页根目录设置

上一步我们已经创建好网页根目录,并且已经做好文件传送钩子,这一步我们配置Nginx的配置文件,开启Nginx并将根目录映射到我们创建的目录下

打开Nginx默认配置项

sudo vim /etc/nginx/sites-available/default

然后找到如下位置,修改root的值为我们设置的根目录文件夹

20210725092820

保存退出,重新启动Nginx

sudo service nginx restart

在和树莓派同一个局域网下访问树莓派的IP地址,访问如下说明目录设置成功了,Nginx配置基本完成

20210725093228

  • 添加本地公钥到远程Git仓库

添加公钥到树莓派,其实就是添加本地PC到Git的白名单中,之前我们已经在本地生成了公钥,下一步我们就是上传公钥,方法很简单,在公钥目录下面打开Gitbash,按格式输入如下shell指令

ssh-copy-id -p 端口一般为22+树莓派用户名@树莓派IP地址

安装完成会有提示,我这个就是已经安装的提示

20210725094710

  • 配置本地Hexo设置,上传网页代码

在上面都配置完成后,我们在配置一下本地网页的传输代码,就可以上传一开始生成的静态网页了!

在网页源码位置修改_config.yml文件

首先修改一下推送地址路径和推送方式

deploy:
  type:  git
  repo:  pi@自己的IP地址:/var/repo/web_blog
  branch: master

修改后如下:

20210725102514

除此之外还有修改网页的源地址,按照下图中的格式修改,添加自己的IP

20210725102620

修改完成后,在源码目录使用GitBash

20210725102157

hexo生成静态网页代码:

hexo g

20210725102957

提交远程代码

hexo d

20210725103010

  • 内网访问博客网页

代码提交成功后,就会出现在Nginx的根目录下,这时我们在内网访问Nginx的端口就可以访问刚刚的网页啦

20210725103948

4.内网穿透

通过以上的步骤,我们现在已经可以通过内网访问部署在树莓派服务器上的网页了,有的朋友可能不满足于此,想要网页通过外网也能访问,下面我分享一下如何做内网穿透,通过外网访问内网服务器!

首先需要准备一些内容:

  1. 一个云服务器(我的是腾讯云服务器,一年100块)
  2. 一个域名(在阿里云购买的域名,一年20块)

云服务器会分配一个公网IP,通过这个IP的端口映射到内网IP端口进行穿透内网,而域名就是我们常说的网址,比如:https://www.csdn.net 就是一个域名,我们准备一个域名然后对他进行解析到服务器IP,就可以通过网址访问网页了

我们通过frp来穿透内网,具体的教程参考这一篇CSDN文章:十分钟教你配置frp实现内网穿透

穿透后我们就可以在外网通过公网IP访问网页了(注意使用服务器的公网IP做穿透时一定要记得设置防火墙,让指定端口通行),此处我穿透到公网IP的8080端口,该端口可以通过外网访问

20210725172540

为了让网页访问地址更加合规,将购买域名的二级域名解析到80端口后,使用Nginx进行端口转发到8080,Nginx配置文件修改如下:(主要为红框的那一段,上边的代码是我自己部署在服务器的网页,不是本节的内容)

20210725175140

到此我们就可以通过网页的二级域名解析后进行访问了

20210725174831

5.结语

树莓派服务器内容就写到这了,文章大概描述了一下部署网页到树莓派服务器的内容,有问题可以在评论区或者私信向我反馈,希望大家给个关注,后期还会持续更新树莓派有关的DIY

img
img

网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。

需要这份系统化的资料的朋友,可以添加戳这里获取

一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!

.结语

树莓派服务器内容就写到这了,文章大概描述了一下部署网页到树莓派服务器的内容,有问题可以在评论区或者私信向我反馈,希望大家给个关注,后期还会持续更新树莓派有关的DIY

[外链图片转存中…(img-8vfXEM7d-1715829144585)]
[外链图片转存中…(img-h8zw5t5P-1715829144585)]

网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。

需要这份系统化的资料的朋友,可以添加戳这里获取

一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!

  • 3
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值