准备阶段
1.准备一台云服务器。
2.购买一个域名,并备案。
3.本地下载安装nodejs,然后安装hexo部分软件包。
云服务器配置
创建网站目录
1 2
| mkdir /home/www/blog chmod 777 /home/blog
|
安装web服务
可以使用nginx或者apache。
我们这里直接使用宝塔来一键部署web服务。
先安装宝塔
1 2
| wget -O install.sh https://download.bt.cn/install/install_6.0.sh sh ./install.sh
|
然后根据提供的网址和账号密码进入宝塔管理页面,并在网站一栏设置网站目录。
安装git
设置一个git用户
修改git用户sudoer权限
1 2 3 4 5 6 7 8
| chmod 740 /etc/sudoers vim /etc/sudoers --------------------------- root ALL=(ALL:ALL) ALL
git ALL=(ALL:ALL) ALL --------------------------- chmod 440 /etc/sudoers
|
修改git用户密码
切换为git用户并配置ssh
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
| su git cd ~ mkdir .ssh cd .ssh
ssh-keygen
cp ida_rsa.pub authorized_keys
chmod 600 ~/.ssh/authorized_keys chmod 700 ~/.ssh
vim ~/.ssh/authorized_keys --------------------------- ssh-rsa xxxxxxxxxxxxxxxxxxx
ssh-rsa ******************* ---------------------------
|
搭建git仓库
1 2 3 4 5 6 7 8 9 10 11 12 13 14
| cd ~
git init --bare blog.git chown -R git:git blog.git
vim ~/blog.git/hooks/post_receive -----------------------------------------------------------------------
git --work-tree=/home/www/blog --git-dir=/home/git/blog.git checkout -f -----------------------------------------------------------------------
chmod +x ~/blog.git/hooks/post-receive
|
本地配置
去官网下载安装nodejs
https://nodejs.org/zh-cn
安装好后打开命令行执行命令安装工具
1 2 3 4 5 6 7 8 9
| #设置registry npm config set registry https://registry.npmmirror.com #安装cnpm npm install -g cnpm #安装hexo-cli及hexo-server cnpm install -g hexo-cli cnpm install hexo-server #安装hexo的git部署工具 cnpm install hexo-deployer-git --save
|
本地hexo部署
1 2 3 4 5 6 7 8
| #创建blog文件夹 mkdir blog cd blog #初始化blog hexo init #生成静态文件并开启本地服务器 hexo g && hexo s #之后访问本地端口4000就可以访问本地blog了。
|
hexo主题设置
1 2 3 4 5 6
| #先寻找喜欢的主题,我们这里使用redefine主题。 npm install hexo-theme-redefine hexo config theme redefine #然后可以在nodejs安装目录下的node_modules文件夹下看到hexo-theme-redefine文件夹 #将该文件夹下的_config.yml复制到blog文件夹下的_config.redefine.yml cp nodejs/node_modules/hexo-theme-redefine/_config.yml blog/_config.redefine.yml
|
hexo的git部署设置
修改blog文件夹下的_config.yml文件,在其末尾的deploy进行如下修改
1 2 3 4
| deploy: type: git repo: git@云服务器公网ip:/home/git/blog.git branch: master
|
最终执行以下命令即可将本地hexo部署到服务器git仓库。