Those who turn back never reach the summit

宝塔简介

宝塔面板是一款服务器管理软件,支持Windows和Linux系统,可以通过Web端轻松管理服务器,提高使用效率。下面是宝塔的官网,有兴趣的小伙伴可以去看一看

安装宝塔

因为本人的服务器是 Centos7,所以接下来都以 Centos7 为例。登陆服务器,执行以下命令:

1
yum install -y wget && wget -O install.sh https://download.bt.cn/install/install_6.0.sh && sh install.sh

安装成功后,按照提示登录宝塔。安装 LNMP:Linux + Nginx + Mysql + PHP

安装配置Git

以下方案默认你已经会基本的Hexo操作,并且已经有了自己的博客。不会的话可以上网搜一下,有很多不错的教程

生成SSH密钥

注意这里有个坑,如何你本地已经生成过密钥就用你本地的就可以了,不用在生成一遍!!不然你还要重新配置一遍Github和阿里的云效,个人觉得很麻烦

1
2
3
git config --global user.name "GitHub用户名"
git config --global user.email "GitHub的邮箱"
ssh-keygen -t rsa -C "GitHub的邮箱"

服务器Git配置

这里你可以用宝塔的终端登录,也可以用 FinalShell 登录,都可以,本人比较懒,接下来都在宝塔上配置(默认你已经安装了 Git)

  • 创建一个Git账户
1
2
adduser git
chmod 740 /etc/sudoers
  • 编辑 /etc/sudoers 文件,按 I 键进入编辑模式,找到 root ALL=(ALL) ALL,在其下方加入:git ALL=(ALL) ALL
  • 输入完成后按 esc ,再输入:wq,保存退出。更改 /etc/sudoers 权限
1
chmod 400 /etc/sudoers
  • 设置 git 账户密码
1
sudo passwd git

这里设置你的 Git 密码。输入完回车即可

  • 切换至 git 用户,创建 ~/.ssh 文件夹和 ~/.ssh/authorized_keys 文件
1
2
3
su git
mkdir ~/.ssh
vim ~/.ssh/authorized_keys

同样 I 进入编辑模式,把之前本地准备的 id_rsa.pub 文件中的公钥复制进去,按 /etc/sudoers 后,输入:wq保存。最后一行要加回车

  • 更改权限
1
2
chmod 600 /home/git/.ssh/authorized_keys
chmod 700 /home/git/.ssh
  • 本地测试
1
ssh -v git@你的服务器ip地址或域名
  • 切换为 root用户 创建 repo 作为仓库目录,并加权限
1
2
3
4
sudo su root
mkdir /var/repo
chown -R git:git /var/repo
chmod -R 755 /var/repo
  • 创建 hexo 目录作为网站根目录
1
2
3
mkdir /var/hexo
chown -R git:git /var/hexo
chmod -R 755 /var/hexo
  • 创建一个空白的 git 仓库
1
2
cd /var/repo
git init --bare hexo.git
  • 编辑一个 Git 钩子,按 I 进入编辑模式,添加下面的代码,按 esc 输入 :wq 保存
1
2
vim /var/repo/hexo.git/hooks/post-receive
git --work-tree=/var/hexo --git-dir=/var/repo/hexo.git checkout -f
  • 更改权限
1
2
chown -R git:git /var/repo/hexo.git/hooks/post-receive
chmod +x /var/repo/hexo.git/hooks/post-receive

本地 Git deploy 设置

  • 安装 git 部署插件
1
npm install hexo-deployer-git --save
  • 在博客根目录配置
1
2
3
4
deploy:
type: git
repo: git@服务器ip或域名:/var/repo/hexo.git
branch: master

配置完成后,可直接hexo三连到自己的服务器。简单快捷~

参考文献