【笔记】把博客部署在云服务器上

一、环境准备

vim基本操作:按i编辑,ESC退出编辑,按:输入命令,输入wq命令按回车保存并退出,按q!不保存退出

1.安装宝塔面板

Centos/OpenCloud/Alibaba:

1
url=https://download.bt.cn/install/install_lts.sh;if [ -f /usr/bin/curl ];then curl -sSO $url;else wget -O install_lts.sh $url;fi;bash install_lts.sh ed8484bec

Debian:

1
wget -O install.sh https://download.bt.cn/install/install_lts.sh && bash install.sh ed8484bec

Ubuntu/Deepin:

1
wget -O install.sh https://download.bt.cn/install/install_lts.sh && sudo bash install.sh ed8484bec

通用安装脚本:

1
url=https://download.bt.cn/install/install_lts.sh;if [ -f /usr/bin/curl ];then curl -sSO $url;else wget -O install_lts.sh $url;fi;bash install_lts.sh ed8484bec

安装好登录面板后会弹出环境安装,选择第一个即可

环境安装好之后到网站页添加站点,记好网站目录名如:leoo.asia
1.png

2. 安装git

进入[官网](Git - Downloads) 选择对应的系统下载安装即可

3.ssh连接你的云服务器 配置git 用户

1
2
3
4
5
6
7
8
9
adduser git  #添加git用户 

chmod 740 /etc/sudoers #改变sudoers文件的权限为文件所有者可写

vim /etc/sudoers #在root ALL=(ALL) ALL 下方添加一行

git ALL=(ALL) ALL

chmod 400 /etc/sudoers #将其权限修改为文件所有者可读

4.为git用户创建ssh密钥连接

在本地电脑上打开命令行:
(以win11为例:右键开始图标,终端)

1
ssh-keygen -t rsa -C "网站目录名"

服务器端使用ssh公钥:
登录服务器,复制公匙id_rsa.pub的内容到服务器/home/git/.ssh/authorized_keys,保存,再次启动电脑终端运行ssh git@服务器IP测试是否可以免密连接到git用户

5.git用户下创建git仓库

1
2
3
4
5
sudo mkdir /opt/git/repos  #新建目录,这是git仓库的位置 

cd /opt/git/repos

sudo git init --bare leo.git #初始化一个名叫leo的仓库,仓库名可根据喜好自定义

6.配置钩子实现自动部署

找到 /opt/git/repos/xmdblog.git/hooks/post-update.sample 文件名改名post-update,添加以下内容:

1
2
3
#!/bin/sh 

git --work-tree=/www/wwwroot/leoo.asia --git-dir=/opt/git/repos/leo.git checkout -f
1
2
3
4
5
6
7
cd leoo.git/hooks/ 

sudo chmod +x post-update #赋予其可执行权限

sudo chown -R git:git /opt/git/repos/ #仓库所有者改为git

sudo chown -R git:git /www/wwwroot/leoo.asia/ #站点文件夹所有者改为git

注意:如果出现 关于.user.ini文件的报错 直接把这个文件干掉就行 (手动狗头

二.本地博客配置

修改本地Hexo配置\_config.yml文件

1
2
3
4
5
6
7
deploy:

type: git

repo: git@服务器IP:/opt/git/repos/leo.git

branch: master

1
2
3
4
5
hexo clean  #清除缓存 

hexo generate #生成静态页面

hexo delopy #部署到服务器

到这里就结束了 完结撒花