Hexo博客在树莓派上的部署

Hexo博客迁移至树莓派

树莓派配置

环境配置

安装操作系统后,打开cmd,使用ssh连接树莓派,如下

ssh pi@192.168.43.190

更新树莓派源

sudo vim /etc/apt/sources.list

输入小写字母i进入编辑模式,将原来的注释掉,替换为清华源

deb http://mirrors.tuna.tsinghua.edu.cn/raspbian/raspbian/ stretch main contrib non-free rpi
deb-src http://mirrors.tuna.tsinghua.edu.cn/raspbian/raspbian/ stretch main contrib non-free rpi

使用ECS退出编辑模式,输入 :w 保存,:q退出

image-20211120231154317

安装git

sudo apt-get install git

查看版本

git --version

安装nginx

sudo apt-get install nginx

查看版本

nginx -v

image-20211120231405190

建立远程仓库

树莓派作为远程服务器,需要创建一个远程仓库

新建文件夹,并添加权限

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

文件夹建立后,把文件夹变为一个git仓库(web_blog为自定义的名字)

cd /var/repo/
git init --bare web_blog.git

创建nginx网站根目录

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脚本

#!/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的值为我们设置的根目录文件夹

image-20211120232534631

保存退出,重新启动nginx

sudo service nginx restart

然后可以在局域网下访问 http://树莓派的ip:82,访问如下说明目录设置成功了,Nginx配置基本完成

20210725093228

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

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

ssh-copy-id -p 22 pi@192.168.43.190  # ip地址改为自己的树莓派ip

安装完成会有提示:

image-20211120233043893

本地Hexo博客配置

修改_config.yml

deploy:
  type:  git
  repo:  pi@192.168.43.190:/var/repo/web_blog #注意ip后的冒号":"后没有空格
  branch: master

32494d48692141d99627aee18b217bd7_tplv-k3u1fbpfcp-watermark

另外还要改

rueirinern1278273

改为后输入:

hexo cl && hexo g -d

然后即可访问 192.168.43.190:82查看自己的博客

image-20211120233912287

bug记录

  1. nginx服务器开启后发现80端口被占用(改为82端口)
  2. 本地hexo配置_config.yml文件时,repo写错
repo:  pi@192.168.43.190:/var/repo/web_blog
# "190:"与"/var"之间的冒号后面没有空格

提醒

按照这种方法配置完成后,外网还不能访问自己的博客,只能在内网访问

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

[小G]

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值