zl程序教程

您现在的位置是:首页 >  其他

当前栏目

【技术种草】cdn+轻量服务器+hugo=让博客“云原生”一下

2023-03-15 21:57:20 时间

搭建自己的博客网站应该是很多程序员最初的浪漫之一,种种原因又经常让这种浪漫渐渐消退。今天介绍一下我的博客解决方案:cdn+轻量服务器+hugo=让博客“云原生”一下。

这套解决方案到底有多方便?

我现在正在写这篇博客,想要发布到网站上只需要做三件事:

  1. hugo new posts/cloudnative-blog-using-tencent-cloud.md
  2. 使用vscode编辑markdown文件
  3. bash deploy.sh

deploy.sh是我自己编写的一键脚本,作用是:

  1. 将当前更改提交到github
  2. ssh到轻量服务器上,安装依赖(hugo、nginx)、git pull、使用hugo生成静态博客、nginx reload。

不要被shell脚本吓到,deploy.sh其实很简单:

#! /bin/bash

dir=$PWD
host=$([ "$1" = "" ]&& echo "yourhostname"|| echo "$1")
port=22

git pull
git add .
git commit -m "commit @arloor $(date)"
git push
if [ "$?" = 0  ]
then 
    # 调用服务器上的tarloor命令
    # 该命令会检查httpd、hugo、和git仓库,并生成静态网站到nginx的html目录,实现一键网站部署
     ssh root@$host  -p$port -t "
     bash tarloor 0 # 0不使用代理,1使用代理
     "
echo -e "33[32m 请访问: https://"$host"33[0m"
else
    echo -e "33[32m 推送失败 33[0m"
fi

ssh到轻量服务器所执行的tarloor命令也是一个shell脚本,可以在轻量服务器上执行以下命令下载:

# centos8、centos stream、rockylinux、almalinux等使用rpm的Linux发行版
wget -O /usr/local/bin/tarloor http://arloor.com/tarloor.sh
# ubuntu、debian等使用deb的Linux发行版
wget -O /usr/local/bin/tarloor http://www.arloor.com/tarloor_deb.sh

有这么方便的书写和发布环境,写博客真带劲!

hugo 最快的静态网站生成器

hugo的生态很好,有很多自定义主题可以选择。我选择的主题是hyde-hyde,属实比较复古啦。同学们可以自己到hugo主题页面选择主题哦,也可以直接把楼主的github项目 clone下来,把contentposts下的所有文章删除即可拥有自己原创的博客啦。

使用cdn加速国内访问

因为轻量服务器会执行git pull到github上拉取博客最新内容,而国内的服务器访问GitHub速度是真的拉胯,我选择了腾讯云香港区的服务器。

腾讯云中国香港的轻量服务器国内访问速度不错,出于稳定性考虑,我还是使用腾讯云cdn加速了国内的访问,只需要开通cdn服务,然后配置源站即可。