Halo博客搭建过程

腾讯云、tencentOS

域名:lyy52.wang

  1. cenos服务器新增用户test的命令
# 新增用户
adduser test

# 修改密码
passwd test

# 添加sudo权限(1.找到sudoers文件;2.修改文件配置)
whereis sudoers
chmod u+w /etc/sudoers
vim /etc/sudoers
chmod u-w /etc/sudoers

# 删除用户的命令
userdel -r test

配置文件修改如下

img

  1. 安装配置docker
# 安装docker
yum install -y yum-utils
yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
yum install -y docker-ce docker-ce-cli containerd.io

# 查看docker版本
docker -v

# 配置docker源(因为我是腾讯的服务器,就配的腾讯源)
vim /etc/docker/daemon.json
### 配置中添加腾讯源(或者其他)
# 重新加载配置、重启docker
systemctl daemon-reload
systemctl restart docker

# 配置docker开机自启
systemctl enable docker
# daemon.json 配置腾讯源
{
   "registry-mirrors": [
       "https://mirror.ccs.tencentyun.com"
  ]
}
  1. 下载并修改Halo的配置文件
# 创建根配置文件目录并跳转
mkdir ~/.halo && cd ~/.halo
# 下载application.yaml
wget https://dl.halo.run/config/application-template.yaml -O ./application.yaml
# 根据需要修改 数据库信息、后端地址等
  1. docker启动Halo容器
# 拉取镜像 
docker pull halohub/halo:latest
# 根据镜像创建容器并启动
docker run -it -d --name halo -p 8090:8090 -v ~/.halo:/root/.halo --restart=unless-stopped halohub/halo:latest

到这一步,用ip+端口已经可以访问halo了,接下来配置域名和https

  1. 服务安装nginx
yum install nginx
# 创建一个配置文件,配置文件实例在后面
vim /etc/nginx/conf.d/my_nginx.conf
# 启动nginx
systemctl start nginx

# nginx重启和停查看状态
systemctl restart nginx
systemctl stop nginx
systemctl status nginx

配置文件实例(来源于Halo官方文档)

upstream halo {
  server 127.0.0.1:8090;
}
server {
  listen 80;
  listen [::]:80;
  server_name www.yourdomain.com;
  client_max_body_size 1024m;
  location / {
    proxy_pass http://halo;
    proxy_set_header HOST $host;
    proxy_set_header X-Forwarded-Proto $scheme;
    proxy_set_header X-Real-IP $remote_addr;
    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
  }
}

【注】这里的域名需要备案且要添加服务器ip解析,其次,服务器安全组(阿里云叫安全组,腾讯叫防火墙)必须开启80端口访问权限。

到这里,域名也可以访问博客啦💐

但是细心的小伙伴发现,用浏览器打开总会提示网站不安全。因为我们走的是http协议,需要添加证书走https协议,就会变成一把小锁表示访问安全。

imgimg

  1. 获取SSL证书并配置https

SSL长期证书一般来说都是收费,博主是用的阿里云域名免费领的SSL证书,一年一换,虽然麻烦一点,但是免费呀(真-白嫖党~)。(其他云计算厂商也有免费的,如七牛云)

另外,配置https的方法有很多,这里附上阿里云的官方文档吧 配置HTTPS证书

https走的是443端口,所以服务器安全组(阿里云叫安全组,腾讯叫防火墙)必须开启443端口访问权限。还要注意nginx也要配置443端口转发哟~

posted @ 2022-10-08 14:14  浪漫主义程序员  阅读(216)  评论(0编辑  收藏  举报