将博客网站部署到腾讯云服务器

本文最后更新于:6 个月前

之前博客一直都用的是gitee的网站服务,这次蹭着腾讯云的活动购买了轻量级服务器,一直尝试将博客网站部署到服务器上。


环境准备

1.登陆宝塔面板

关于腾讯云服务器就不过多介绍了。

登录腾讯云控制台:https://console.cloud.tencent.com/

访问轻量级应用服务器,在”应用管理“页面点击远程登陆

输入下放命令获取宝塔账号和密码

1
sudo /etc/init.d/bt defaul
1
2
3
4
5
6
7
8
9
10
11
12
==================================================================
BT-Panel default info!
==================================================================
外网面板地址: http://81.70.27.253:8888
内网面板地址: http://10.0.24.11:8888
*以下仅为初始默认账户密码,若无法登录请执行bt命令重置账户/密码登录
username: ********
password: ************
If you cannot access the panel,
release the following panel port [8888] in the security group
若无法访问面板,请检查防火墙/安全组是否有放行面板[8888]端口
==================================================================

进入防火墙页面,开启8888端口

新建密钥:访问密钥 - 控制台 (tencent.com),在宝塔面板输入,成功进入宝塔面板。

2.添加站点

初次登陆宝塔面板,可以选择LNMP套件安装,当然也可以自己选择安装

然后选择左侧导航”网站“,选择添加站点

输入腾讯云赠送的域名,点击”提交“,即可在 /www/wwwroot/ 下生成相应同名文件夹

点击该站点右边设置,在域名管理中添加服务器IP地址,默认端口即可,然后在腾讯云面板进行域名备份,这个过程可能需要1-2天。

备份完即可在宝塔面板-站点管理SSL进行授权

3.Git仓库搭建

打开服务器终端,安装git,并输入命令

1
2
3
4
5
adduser git   #添加名字叫git的用户

#然后给git 用户分配root 权限
chmod 740 /etc/sudoers #改变sudoers文件的权限为文件所有者可写
vim /etc/sudoers #打开sudoers文件文件

按下i进入插入模式,找到这一行在其下面添加

1
2
#在root ALL=(ALL) ALL 下方添加一行 
git ALL=(ALL) ALL

按下Esc :wq保存退出

给git用户添加ssh密钥

建立与主机的连接,在本地主机打开GitBash

1
$ ssh-keygen

输入完后电脑会要求输入两次创建密码,咋们直接两次回车跳过,此时电脑的c盘>用户>自己的用户名>.ssh目录下已经生成好了公钥 id_rsa.pub 文件

打开终端

打开宝塔终端

1
2
3
4
su git  #切换到git用户
mkdir -p ~/.ssh #创建目录,-p 确保目录名称存在,不存在的就建一个。
vim ~/.ssh/authorized_keys #创建并编辑authorized_keys文件
## 将本地电脑的 id_rsa.pub 文件打开后的那一大坨字符全部复制进去,保存退出

修改权限

1
2
3
cd ~
chmod 600 .ssh/authorized_keys #为authorized_keys文件赋予文件所有者可读可写的权限
chmod 700 .ssh #为.ssh文件夹赋予文件夹所有者可读可写可执行的权限

这一步应该会提示进入root用户进行操作

建立仓库

这个仓库用来存放我们的网页资源

1
2
3
4
su root  #切换到超级管理员
mkdir /home/git/repos #新建目录(repository仓库的缩写),这是git仓库的位置
cd /home/git/repos
git init --bare hexoBlog.git #在repos目录下,初始化一个名为 hexoBlog 的空git储存库

配置钩子实现静态部署

在服务器上的裸仓库 hexoBlog.git 里创建一个钩子,在满足特定条件时将静态 HTML 文件传送到 Web 服务器的目录下。

1
2
cd /home/git/repos/hexoBlog.git/hooks
vi post-update #新建钩子文件

进入编辑模式添加

1
git --work-tree=/www/wwwroot/你的站点域名 --git-dir=/home/git/repos/hexoBlog.git checkout -f

保存退出,修改文件权限

1
2
3
4
cd /home/git/repos/hexoBlog.git/hooks/
chmod +x post-update #赋予其可执行权限
chown -R git:git /home/git/repos/ #仓库所有者改为git
chown -R git:git /www/wwwroot/你的站点域名/ #站点文件夹所有者改为git

最后在添加软链

1
2
ln -s /usr/local/common/git/bin/git-receive-pack /usr/bin/git-receive-pack
# 前一个地址要正确找到git安装位置,upload-pack也同理,同样的指令添加软链

最后

我们在hexo配置文件中修改配置文件即可

1
2
3
4
deploy:
type: git
repo: git@你的服务器IP地址:/home/git/repos/hexoBlog.git #服务器仓库地址
branch: master

本博客所有文章除特别声明外,均采用 CC BY-SA 4.0 协议 ,转载先请联系作者且注明出处!