在centos/fedora或fedora下HEXO搭建过程

1、安装nginx
yum install nginx -y
2、创建git用户,为了让本地将项目上传之服务器

  1)、adduser git #创建giit用户
  2)、passwd git  #为git用户设密码

3)、为git用户加入sudo权限
把git用户添加到sudo用户组中,输入以下代码

sudo vi /etc/sudoers

打开sudoers文件,输入:/root进行搜索,搜索到代码行root ALL=(ALL) ALL,然后在这一行下添加以下代码git ALL=(ALL) ALL。输入完毕之后,按wq!强制保存退出vi


image.png

4)、设置验证公钥作免密登陆

    # 切换用户
    su git
    # 创建目录
    mkdir ~/.ssh
    # 新建文件
    vim ~/.ssh/authorized_keys

在此处将你的公钥放入authorized_keys中,
重要的事说三边!你本地的!你本地的!你本地的。如果你的是windows下的应该在你的用户目录下如c:/user/jiejie/.ssh……的.shh文件夹中没有需要创建

ssh-keygen -t rsa

centos/fedora一般在/root/.ssh中
此处linux以.开头文件默认是隐藏的所以直接ls不显示cd /root/.ssh即可
直接粘贴到authorized_keys去


image.png

:wq退出编辑设置权限

    chmod 600 ~/.ssh/authorized_keys
    chmod 700 ~/.ssh

然后为.ssh与.ssh/authorized_keys
现在可以测试连接性了

ssh -v git@ServerIP
image.png

当然如果linux系统没有ssh服务也需要安装或者启用。
5)、在服务器上建一个裸库

  su git
   cd ~
   git init --bare blog.git

5、重新回到服务器,在网站根目录新建一个blog文件夹,用于客户端上传文件,并且把该文件授权给git用户。代码如下:

    sudo mkdir -p /usr/share/nginx/html/blog
    sudo chown -R git:git/usr/share/nginx/html/blog

接着新建一个post-receive文件

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

然后在该文件中输入以下内容:

    #!/bin/sh
    git --work-tree=/usr/share/nginx/html/blog --git-dir=/home/git/blog.git checkout -f

保存退出之后,再输入以下代码,赋予该文件可执行权限。

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

6)7、返回客户端,设置博客根目录下的_config.yml文件。
此处我使用的是hexo

    deploy:
        type: git
        repo: git@SERVER:/home/git/blog.git       #此处的SERVER需改为你自己服务器的ip
        branch: master                            #这里填写分支
        message:                                  #提交的信息

在本地使用hexo g上传到指定git仓库

你可能感兴趣的:(在centos/fedora或fedora下HEXO搭建过程)