前端折腾Ubuntu-hexo安装以及部署(五)

远程服务器安装git

安装一些依赖和工具包

sudo apt-get install vim openssl build-essential libssl-dev wget curl git

hexo博客本地安装

下面切入本地windows环境,安装hexo服务

安装前提本地安装了nodejs和git

安装 hexo命令行工具

npm install hexo-cli -g

创建博客

hexo init myblog
cd blog
npm install
hexo server

这时候本地博客创建成功,访问http://localhost:4000

创建我的第一篇文件

hexo new 创建一篇文件,具体参数hexo官网中都有提供https://hexo.io/

hexo new 我的第一个文章

文章格式是Markdown格式,文章会保存在myblog/source/_posts/我的第一个文章.md,这个目录下,拿编辑器打开md然后进行写作。之后在hexo server刷新页面这样新文章就出来了。

使用 Hexo 生成静态文件

hexo generate

执行命令后项目中就多了个public目录,里面就是静态资源文件,需要发布到服务器中的文件

远程服务器中创建仓储

使用git用户登陆

ssh -p 39999 git@111.111.111.111

创建一个裸仓库,裸仓库就是只保存git信息的Repository, 首先切换到git用户确保git用户拥有仓库所有权
一定要加 --bare,这样才是一个裸库。

git init --bare blog.git

使用 git-hooks 配置

新建post-receive文件

vim ~/blog.git/hooks/post-receive

在post-receive文件中写入

DIR=/data/www/blog

git --work-tree=${DIR} clean -fd
git --work-tree=${DIR} checkout --force

然后保存退出,并设置权限

chmod +x /home/git/blog.git/hooks/post-receive

改变 BLOG.GIT 目录的拥有者为 GIT 用户

chown -R git:git blog.git

创建静态文件目录

依次创建data,www,blog目录

sudo mkdir /data/www/blog

依次创建log文件夹,创建log文件

sudo mkdir /data/wwwlogs
cd /data/wwwlogs
sudo touch blog.log

链接git仓库

chown -R git:git /data/www/blog

配置权限

chmod -R 755 /data/www/blog

配置_config.yml完成自动化部署

现在操作本地windows中的myblog项目,在myblog中打开_config.yml文件,在文件的末尾添加代码.

deploy:
  type: git
  repo: ssh://git@111.111.111.111:39999/home/git/blog.git
  branch: master
  message: 初始化库

安装hexo git工具

npm install hexo-deployer-git --save

保存后,尝试将我们的博客部署到服务器,也可以发布到github中。

hexo clean
hexo generate --deploy

查看服务器上hexo静态资源文件是否已经上传

查看资源文件是否上传成功

cd /data/www/blog

如果有文件就说明上传成功

接下来配置nginx来搭起web服务器


文章作者: jackie chen
版权声明: 本博客所有文章除特別声明外,均采用 CC BY 4.0 许可协议。转载请注明来源 jackie chen !
评论
 上一篇
前端折腾Ubuntu-配置nginx(六) 前端折腾Ubuntu-配置nginx(六)
安装nginx和关闭版本号一般阿里云服务器会预装Apache,我们没有特别需要的话就删掉 sudo service apache2 stop sudo update-rc.d -f apache2 remove sudo apt-get r
2019-07-03
下一篇 
前端折腾Ubuntu-修改服务器登录默认端口(四) 前端折腾Ubuntu-修改服务器登录默认端口(四)
为什么要修改登录端口?现在登录是走默认的22端口,这个是Linux系统默认端口,意味着这个端口其实是对所有人透明的,出于基本的安全考虑,修改这个默认端口。 修改ssh服务配置sudo vim /etc/ssh/sshd_config 修改内
2019-06-27
  目录