抱歉,您的浏览器无法访问本站
本页面需要浏览器支持(启用)JavaScript
了解详情 >

Readme

一次次偷懒导致我总是忘记更新博客的流程。
在我彻底忘记当初是怎么部署服务前,我得在这里记录操作步骤。

illustration

01 首先,找到门牌号

找出服务器的IP地址、ssh端口号和账户密码。切记。
ssh的配置文件通常在/etc/ssh/sshd_config。在里面找到端口。
获得需要的凭证后,通过ssh连接到服务器。

02 然后,更新博客文件

hexo将md文件作为源文件,将其按照配置的样式渲染为html文件。
hexo数据位于/DATA/AppDATA/hexo内。
这个文件夹包含:

  • 一个名为blog的文件夹,其中包含Hexo相关文件。
  • 一个名为git的文件夹,其中包含了git相关的文件。
  • 数个以Hexo+<日期>命名的压缩包,是定期备份的博客文件。

进入/DATA/AppDATA/hexo/blog/source文件夹,这个路径放置aboutfaqsimages等资源文件,其中_posts用于放置博客md源文件。

  1. 把md文件丢进_posts文件夹里面。完成!
  2. 或者使用rsync同步文件:
1
rsync -av --delete /DATA/Documents/Obsidian/Code/Blog/ /DATA/AppData/hexo/blog/source/_posts/

03 进入Hexo客户端!

创立博客时,我先使用Node镜像创建了一个容器,然后在内搭建了Hexo平台。
所以更新博客需要进入node-hexo容器内操作。

1
2
3
4
5
6
sudo docker ps -a | grep node
# 或者
sudo docker ps -a | grep hexo
# 就可以查询到包含`node`或者`hexo`字样的容器了。
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS
1fabc9dfcd89 node-hexo "docker-entrypoint.s…" 9 months ago Exited (137) 4 months ago node-hexo

现在启动,然后进入这个node-hexo容器。

1
2
3
sudo docker start node-hexo
sudo docker exec -it node-hexo bash
root@1fabc9dfcd89:/#

找到博客所在的hexo/blog文件夹。

1
2
3
4
root@1fabc9dfcd89:/# ls
bin boot dev etc hexo home ...
root@1fabc9dfcd89:/# cd hexo/blog
root@1fabc9dfcd89:/hexo/blog#

容器内的这个hexo文件夹和主机内的hexo文件夹是连通的。
使用经典三板斧来更新博客:

1
2
3
4
5
6
hexo clean
# 清除已生成的文件
hexo g
# 生成静态文件
hexo s
# 启动一个临时的网页服务

由于容器的4000端口对应到主机4000端口,因此可以直接在主机上访问这个网页服务了。

部署!

确定没有问题后,就可以部署到Github上了:

1
hexo d

大功告成!最后再关掉这个容器。

1
2
exit
sudo docker stop node-hexo

另外……

  • 我的博客页面部署在GitPages上,可以在服务器关闭时提供访问。
  • 博客使用PicX作为图床。
  • 博客的评论系统由giscus提供。

这些简单的东西我自己都记不住……

评论