服务器安装配置git仓库
安装git
yum install git -y
创建一个git账号密码
useradd git
passwd git
su - git
设置git服务器RSA认证
本地生成公钥私钥
ssh-keygen -t rsa
秘钥所在位置是~/.ssh,里面包含了id_rsa和id_rsa.pub分别是私钥和公钥,id_rsa.pub是我们后面需要服务器需要用到的。
git服务器打开RSA认证
vim /etc/ssh/sshd_config
在sshd_config中设置以下几项:
RSAAuthentication yes PubkeyAuthentication yes AuthorizedKeysFile .ssh/authorized_keys
配置ssh
切换git用户并且设置密钥su git cd ~ mkdir .ssh cd .ssh // ~/.ssh/id_rsa.pub ,将公钥复制粘贴到authorized_keys vi authorized_keys chmod 600 ~/.ssh/authorized_keys chmod 700 ~/.ssh
执行ssh 命令测试
执行ssh命令测试是否可以免密登录ssh -v git@服务器的公网ip
初始化一个blog仓库
# 注意切换到git账号 su git
cd ~
git init --bare blog.git
设置git钩子
编辑文件 /home/git/blog.git/hooks/post-receive
内容如下:
#!/bin/bash
rm -rf /home/www/blog
git clone /home/git/blog.git /home/www/blog
意思是当git仓库更新时,clone 一份到 /home/www/blog 目录中
chmod a+x /home/git/blog.git/hooks/post-receive
创建静态文件目录
新建/home/www/blog文件夹,需要切换到root账户
cd /home
mkdir www
cd www
mkdir blog
// 修改文件夹权限
chmod 777 /home/www/blog
chmod 777 /home/www
nginx 配置
server {
......
# 站点根目录
root /data/www/blog;
}
重启Nginx服务
hexo 发布设置
编辑hexo 根目录下的 _config.yml
deploy:
type: git
repository: git@<腾讯云服务器公网ip>:/home/git/blog.git
brach: master
hexo g -d
转载请注明来源,欢迎对文章中的引用来源进行考证,欢迎指出任何有错误或不够清晰的表达。