如何创建这样的Halo博客
1.准备服务器及域名
本博客使用雨云云服务器,示例使用雨云
找到云产品中云服务器分类,点击立刻购买
根据下图配置

建议选用非大陆地区节点,不需要备案

建议使用KVM标配版以上,不然会有点坐牢

其余保持默认即可
本博客使用阿里云域名代理商,示例使用阿里云
点击阿里云万网右侧的“域名注册”
根据下图操作

选一个.cn以外的域名

购买域名即可
2.远程连接服务器
在雨云开启服务器
本文章使用Nxshell作为演示

点击右上角加号“新建会话”,在下图填入对应的内容

其余内容保持不变
点击保存并连接
当你在终端看到root@RainYun-K1XrwALt:#之类的就成功了
此处错误处理方法:重启服务器再试一遍,如果没办法只能给你算一卦了
3.部署应用
安装Docker
在终端输入以下内容即可
设置Docker的
APT仓库
sudo apt-get update sudo apt-get install ca-certificates curl sudo install -m 0755 -d /etc/apt/keyrings sudo curl -fsSL https://download.docker.com/linux/ubuntu/gpg -o /etc/apt/keyrings/docker.asc sudo chmod a+r /etc/apt/keyrings/docker.asc echo \ "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.asc] https://download.docker.com/linux/ubuntu \ $(. /etc/os-release && echo "$VERSION_CODENAME") stable" | \ sudo tee /etc/apt/sources.list.d/docker.list > /dev/null sudo apt-get update安装最新版本
sudo apt-get install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin将你加入Docker用户组
sudo usermod -aG docker $USER
newgrp docker部署Nginx+Halo+MySQL
创建目录
mkdir ~/halo && cd ~/halo创建docker编排
vim docker-compose.yml按
i进入vim编辑模式,粘贴内容
version: "3.8"
services:
nginx:
image: 'jc21/nginx-proxy-manager:latest'
restart: always
networks:
halo_network:
ports:
- "80:80"
- "81:81"
- "443:443"
volumes:
- ./nginx/data:/data
- ./nginx/letsencrypt:/etc/letsencrypt
halo:
image: halohub/halo:2.13
container_name: halo
restart: always
depends_on:
halodb:
condition: service_healthy
networks:
halo_network:
volumes:
- ./halo2:/root/.halo2
ports:
- "8090:8090"
healthcheck:
test: ["CMD", "curl", "-f", "http://localhost:8090/actuator/health/readiness"]
interval: 30s
timeout: 5s
retries: 5
start_period: 30s
command:
- --spring.r2dbc.url=r2dbc:pool:mysql://halodb:3306/halo
- --spring.r2dbc.username=root
- --spring.r2dbc.password=o#DwN&JSa56
- --spring.sql.init.platform=mysql
- --halo.external-url=http://localhost:8090/
halodb:
image: mysql:8.1.0
container_name: halodb
restart: always
networks:
halo_network:
command:
- --default-authentication-plugin=caching_sha2_password
- --character-set-server=utf8mb4
- --collation-server=utf8mb4_general_ci
- --explicit_defaults_for_timestamp=true
volumes:
- ./mysql/mysql:/var/lib/mysql
- ./mysql/mysqlBackup:/data/mysqlBackup
ports:
- "3306:3306"
healthcheck:
test: ["CMD", "mysqladmin", "ping", "-h", "127.0.0.1", "--silent"]
interval: 3s
retries: 5
start_period: 30s
environment:
# 请修改此密码为上方 Halo 服务的 SPRING_R2DBC_PASSWORD 变量值
- MYSQL_ROOT_PASSWORD=o#DwN&JSa56
- MYSQL_DATABASE=halo
networks:
halo_network:按
esc退出编辑模式,按:输入wq保存并退出输入命令启动
docker compose up -d4.内容初始化、域名解析
内容初始化

配置后台用户名及密码
域名解析
回到阿里云控制台,打开域名,选用下方的“域名解析”

添加两条记录,主机记录分别为www和@,记录类型为A,记录值为服务器公网ip
5.Nginx Proxy Manager 反向代理
安装 Npm
mkdir npm重新启动Docker
docker compose up -d访问http://服务器公网 IP:81
创建账户
进入 NPM 仪表盘,点击代理服务进入代理服务配置页面
如图上配置
结束awa
你已经可以通过域名访问你的Blog了
原创
如何创建Halo博客
没有版权声明,也没有Ai
评论交流
欢迎留下你的想法