程序员scholar 程序员scholar
首页
  • Java 基础

    • JavaSE
    • JavaIO
    • JavaAPI速查
  • Java 高级

    • JUC
    • JVM
    • Java新特性
    • 设计模式
  • Web 开发

    • Servlet
    • Java网络编程
  • Web 标准

    • HTML
    • CSS
    • JavaScript
  • 前端框架

    • Vue2
    • Vue3
    • Vue3 + TS
    • 微信小程序
    • uni-app
  • 工具与库

    • jQuery
    • Ajax
    • Axios
    • Webpack
    • Vuex
    • WebSocket
    • 第三方登录
  • 后端与语言扩展

    • ES6
    • Typescript
    • node.js
  • Element-UI
  • Apache ECharts
  • 数据结构
  • HTTP协议
  • HTTPS协议
  • 计算机网络
  • Linux常用命令
  • Windows常用命令
  • SQL数据库

    • MySQL
    • MySQL速查
  • NoSQL数据库

    • Redis
    • ElasticSearch
  • 数据库

    • MyBatis
    • MyBatis-Plus
  • 消息中间件

    • RabbitMQ
  • 服务器

    • Nginx
  • Spring框架

    • Spring6
    • SpringMVC
    • SpringBoot
    • SpringSecurity
  • SpringCould微服务

    • SpringCloud基础
    • 微服务之DDD架构思想
  • 日常必备

    • 开发常用工具包
    • Hutoll工具包
    • IDEA常用配置
    • 开发笔记
    • 日常记录
    • 项目部署
    • 网站导航
    • 产品学习
    • 英语学习
  • 代码管理

    • Maven
    • Git教程
    • Git小乌龟教程
  • 运维工具

    • Docker
    • Jenkins
    • Kubernetes
  • 算法笔记

    • 算法思想
    • 刷题笔记
  • 面试问题常见

    • 十大经典排序算法
    • 面试常见问题集锦
关于
GitHub (opens new window)
首页
  • Java 基础

    • JavaSE
    • JavaIO
    • JavaAPI速查
  • Java 高级

    • JUC
    • JVM
    • Java新特性
    • 设计模式
  • Web 开发

    • Servlet
    • Java网络编程
  • Web 标准

    • HTML
    • CSS
    • JavaScript
  • 前端框架

    • Vue2
    • Vue3
    • Vue3 + TS
    • 微信小程序
    • uni-app
  • 工具与库

    • jQuery
    • Ajax
    • Axios
    • Webpack
    • Vuex
    • WebSocket
    • 第三方登录
  • 后端与语言扩展

    • ES6
    • Typescript
    • node.js
  • Element-UI
  • Apache ECharts
  • 数据结构
  • HTTP协议
  • HTTPS协议
  • 计算机网络
  • Linux常用命令
  • Windows常用命令
  • SQL数据库

    • MySQL
    • MySQL速查
  • NoSQL数据库

    • Redis
    • ElasticSearch
  • 数据库

    • MyBatis
    • MyBatis-Plus
  • 消息中间件

    • RabbitMQ
  • 服务器

    • Nginx
  • Spring框架

    • Spring6
    • SpringMVC
    • SpringBoot
    • SpringSecurity
  • SpringCould微服务

    • SpringCloud基础
    • 微服务之DDD架构思想
  • 日常必备

    • 开发常用工具包
    • Hutoll工具包
    • IDEA常用配置
    • 开发笔记
    • 日常记录
    • 项目部署
    • 网站导航
    • 产品学习
    • 英语学习
  • 代码管理

    • Maven
    • Git教程
    • Git小乌龟教程
  • 运维工具

    • Docker
    • Jenkins
    • Kubernetes
  • 算法笔记

    • 算法思想
    • 刷题笔记
  • 面试问题常见

    • 十大经典排序算法
    • 面试常见问题集锦
关于
GitHub (opens new window)
npm

(进入注册为作者充电)

  • 高性能服务器 - Nginx

  • 项目部署

    • 带你从0认识云服务器
    • Docker部署SpringBoot项目
    • 华为云部署前后端分离项目
    • 腾讯云服务器部署Hexo博客
      • 环境准备
        • 安装Git
        • 创建git账户
        • 设置Git账户
        • 配置仓库与相关配置
      • Nginx
      • 部署
    • 宝塔部署前后端分离项目
    • Spring Boot应用打包与部署
    • 一键部署文件到远程服务器
    • Docker部署项目+环境安装
  • 服务器
  • 项目部署
scholar
2024-01-17
目录

腾讯云服务器部署Hexo博客

# 环境准备

# 安装Git

打开服务器控制面板,修改root密码一定需要修改!,选择登录。

笔者这里选择的是使用FinalShell远程连接。

image-20230711184431144

输入命令

sudo su root
1

然后安装Git

yum install git
1

image-20230711184601508

# 创建git账户

adduser git
chmod 740 /etc/sudoers
vim /etc/sudoers
1
2
3

image-20230711184728461

添加git ALL=(ALL) ALL改回权限

chmod 400 /etc/sudoers
1

# 设置Git账户

sudo passwd git
1

设置的密码看不到,你直接输入就可以了。这里我设置的密码太简单了会有这样的提示。不用关心直接输入,看到成功提示即可。

image-20230711184827812

切换至 git 用户,创建 ~/.ssh 文件夹和 ~/.ssh/authorized_keys 文件,并赋予相应的权限

su git
mkdir ~/.ssh
vim ~/.ssh/authorized_keys
1
2
3

按”i” 进入编辑模式,将我们在 win11 中生成的 id_rsa.pub 文件中的公钥复制到 authorized_keys 中,按”esc”,然后按”:wq”,保存退出。

image-20230711185023624

接着,输入一下命令,赋予权限

chmod 600 /home/git/.ssh/authorized_keys
chmod 700 /home/git/.ssh
1
2

在本地 Git 终端中测试是否能免密登录 git,其中 SERVER 为填写自己的云主机 IP,执行输入 yes 后输入你之前配置的 git 密码,无报错就说明好了。

在电脑本地桌面,右键”Git Bash Here”,输入一下命令,其中 SERVER 填写自己的云主机 ip,执行输入 yes 后不用密码说明配置成功了。

ssh -v git@SERVER
1

image-20230711185225978

说明已经连接成功了

# 配置仓库与相关配置

返回服务端命令行切换到 root 账户

sudo su root
1

然后输入,赋予权限

mkdir /var/repo
chmod -R 755 /var/repo
chown -R git:git /var/repo/
1
2
3

创建一个新的库:

cd /var/repo
git init --bare hexo.git
1
2

创建一个新的 Git 钩子,用于自动部署。在 /var/repo/hexo.git 下,有一个自动生成的 hooks (opens new window) 文件夹。我们需要在里边新建一个新的钩子文件 post-receive。

vim /var/repo/hexo.git/hooks/post-receive
1

进入编辑模式,然后将下面那两行代码粘贴进去,保存退出。

#!/bin/bash
git --work-tree=/www/wwwroot/hexo --git-dir=/var/repo/hexo.git checkout -f
1
2

新建一个文件用做网站的根目录,记得给权限。

mkdir /www/wwwroot/hexo
chmod -R 755 /www/wwwroot/hexo
chown -R git:git /www/wwwroot/hexo
1
2
3

# Nginx

我们使用宝塔面板来一键部署 Nginx关键是简单

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

如果是腾讯云,个别会自带宝塔面板

image-20230711185538503

记得去服务器打开8888端口

复制上述地址即可。用户名与密码也有在用户面板中。 打开软件商店输入Nginx。选择免费的安装。等待安装结束。

image-20230711185720875

部署完成之后,点击网站,添加站点,填写你的域名(加上3w),没有的话写你的服务器 ip 地址。根目录选我们之前建立的/www/wwwroot/hexo

image-20230711185807954

回到服务器终端,重启宝塔服务

service bt restart
1

# 部署

接下来需要将本地的生成好的/public推送到服务器。进入本地电脑 hexo 博客的根目录,编辑站点配置文件 _config.yml,找到 deploy,修改成以下

deploy:
  type: git
  #repo改为repo: git@域名:/var/repo/hexo.git
  repo: git@ip:/var/repo/hexo.git
  branch: master
1
2
3
4
5

然后使用

npm i  hexo-deployer-git  -- save
hexo clean
hexo generate
hexo 52.项目部署
1
2
3
4

要输入密码的时候就输入即可,然后打开IP查看

image-20230711190024284

域名备案之后,可以直接绑定域名

公众号封面

编辑此页 (opens new window)
上次更新: 2024/12/28, 18:32:08
华为云部署前后端分离项目
宝塔部署前后端分离项目

← 华为云部署前后端分离项目 宝塔部署前后端分离项目→

Theme by Vdoing | Copyright © 2019-2025 程序员scholar
  • 跟随系统
  • 浅色模式
  • 深色模式
  • 阅读模式