hexo搭建小记(一)

ECS+HEXO搭建小记

引言

去年的时候用AWS+WordPress域名搭建了一个小博,但使用频率不高,也可能是免费的没有写的动力吧,随后趁着阿里云打折买了个小服和域名,这里随笔记一下搭建过程

流程如下

  • 1.本机安装hexo + node + git
  • 2.ECS新建git用户,创建git仓库并创建hook,配置nginx,并同步本机ss公钥
  • 3.github上创建一个账号,并建立一个新的repository,做博客备份
  • 4.本地hexo配置好ECS的deploygit配置 在本地机器写一篇博客 执行hexo d

1.服务器搭建配置

ECS服务器我这边选用的是 阿里云 Ubuntu14 + LNMP 部署的。

  • 1.1 ubuntu上安装git,nodeJS

    $ sudo apt-get install git
    $ service nginx start
    $ sudo apt-get install node
    
  • 1.2 新建git用户

    $ adduser git
    $ cd /home/git
    $ git init --bare yourgitname.git
    

    修改git用户权限

    $ adduser git
    $ chmod 740 /etc/sudoers
    $ vim /etc/sudoers
    

    找到其中一行

    $ ## Allow root to run any commands anywhere
    $ root    ALL=(ALL)     ALL
    

    随后设置Git用户的密码

    $ chmod 400 /etc/sudoers
    $ #需要root权限
    $ sudo passwd git
    

    将本地机器上的ssh公钥填入/home/git/.ssh/authorized_keys文件

     本机操作
    $ cat ~/.ssh/id_rsa.pub
     服务器操作
    $ nano /home/git/.ssh/authorized_keys
    
  • 1.3 Nignx配置

    这里拿我的nginx配置做例子

    server {
        listen 80 default_server;
        listen [::]:80 default_server ipv6only=on;
    
        root /home/git/hexo;
        #这里root 填写的是你git用户下的仓库地址,在hexo部署的时候会在这里
        index index.php index.html index.htm;
        root /home/git/hexo;    
        server_name xxxx.com www.xxxx.com;
        # 这里是你自己申请的网址
        location / {
    
  • 1.4 建立git裸库

    $ su git
    $ cd ~
    $ git init --bare blog.git
    
  • 1.5 使用 git-hook 同步

    $ vim ~/blog.git/hooks/post-receive
     输入如下信息
    $ #!/bin/sh
    $ git --work-tree=/home/git/hexo --git-dir=~/yourname.git checkout -f
     保存退出,并设置权限
    $ chmod +x post-receive
    

    xxx 自己的文件地址和nginx里的一样

    最后在重启一下 nginx

    $ service nginx restart
    

    服务器的配置就结束了

2.本机配置

  • 2.1 安装hexo到自己的目录下,安装hexo-server,同时本机要安装git和nodeJS没有apt-get 和 brew的 可以去网上下载

    $ npm install -g hexo-cli
    $ npm install hexo-deployer-git --save
    $ hexo init /User/Document/hexo
    $ cd /User/Document/hexo
    $ npm install
    
  • 2.2 修改delopy 项目

    deploy:
      type: git
      repo: git@xx.xx.xx.xx:/home/git/yourgitname.git
       branch: master
    
  • 2.3 本机查看hexo

    $ hexo s 命令来启动hexo
    

    至此环境就部署完毕啦,在浏览器输入localhost:4000 即可看到

  • 2.4 hexo部署到服务器

    新建一篇文章

    hexo new <这是新文章标题>
    

    然后把电脑本地的hexo 部署到自己的服务器上。接下来就通过自己的域名或者iP也可以访问自己的博客了

    $ hexo clean && hexo g -d
    

    搭建好的博客就长这样啦

    alt text

附录几个参考地址:

打个广告:

sm.ms 图床 (请给我广告费,谢谢)

alt text