Hexo环境搭建

由于咱之前搞过,这里就不多bb了,只是弄一些重要的步骤就行。

开始之前说明一下npm淘宝源自24年年初就不能使用了:https://registry.npm.taobao.org

切换成npm源: https://npmmirror.com/

1
2
3
4
5
# 查看自己使用的npm源
npm config get registry

# 切换成npm国内高速源
npm config set registry https://npmmirror.com/

一、配置SSH-Key

在本机的shell上执行如下代码,生成本机的秘钥:

1
ssh-keygen

将上述生成的key拷贝到github上:主页 –> SSH and GPG keys –> New SSH key

image-20240721085051876

二、配置本地环境

参考Hexo官方教程:https://hexo.io/zh-cn/docs/

注意:

  • 如果是Mac或者Linux就不需要安装带图形化界面的Node和Git了,用Shell直接下载即可。
  • 在Mac下可能会涉及到权限控制、安全性等导致出现问题,sudo能解决大部分问题。

跟网上有很多教程可能不太一样

安装Git

1
2
# 在shell中直接输入git,然后mac就会提示一句安装命令,直接安装最新版的git
git

安装Node

Node官方提供的教程:https://nodejs.cn/en/download,如果步骤变了可以随时去官方界面对比一下

1
2
3
4
5
6
7
8
9
10
11
# installs nvm (Node Version Manager)
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.7/install.sh | bash

# download and install Node.js (you may need to restart the terminal)
nvm install 20

# verifies the right Node.js version is in the environment
node -v # should print `v20.15.0`

# verifies the right NPM version is in the environment
npm -v # should print `10.7.0`

image-20240721105449948

安装完成之后

1
2
3
git -v
node -v
npm -v

安装Hexo

1
2
3
4
npm install -g hexo-cli

# 如果出现报错(使用权限借调进行安装、然后输入密码)
sudo npm install -g hexo-cli

然后就是hexo使用

1
2
3
4
5
# 初始化空文件夹作为hexo仓库
hexo init

# 清除缓存 生成 部署
hexo clean && hexo g && hexo d

三、配置Typora自动上传图片

这里咱就使用picgo软件了,如果安装了picgo软件的话;如果使用command line的话需要打开配置文件,填入以下内容

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
{
"picBed": {
"uploader": "aliyun",
"aliyun": {
"accessKeyId": "你的AccessKeyID",
"accessKeySecret": "你的AccessKeySecret",
"bucket": "xleixz",//换成你自己的Bucket名称
"area": "oss-cn-nanjing",//OSS概览里的EndPoint(地域节点),“.”前面的内容
"path": "typora-img/",//Bucket下的文件夹,没有可以不写,默认不要文件夹
"customUrl": "https://xleixz.oss-cn-nanjing.aliyuncs.com",//OSS概览里的Bucket域名(开头加上https://)
"options": ""//可以不写
}
},
"picgoPlugins": {
}
}

image-20240721110721750

image-20240721111059235

四、Deployment Blog

如果本机有多个版本的node,在部署博客之前需要

1
2
3
4
5
# 切换到有Hexo的node版本上
nvm use 20

# Hexo部署
hexo clean && hexo g && hexo d