阿里云服务器搭建halo博客

环境准备

1、安装jdk11

目前运行 Halo 的最低依赖要求为 JRE 11,因此先安装jdk11

# 1. 安装JDK
[root@centos ~]#sudo yum install java-11-openjdk -y

# 2. 检查版本
[root@centos ~]#java -version
openjdk version "11.0.15" 2022-04-19 LTS
OpenJDK Runtime Environment 18.9 (build 11.0.15+9-LTS)
OpenJDK 64-Bit Server VM 18.9 (build 11.0.15+9-LTS, mixed mode, sharing)

2、安装docker

1、查看目前系统版本,lsb_release -a 我目前系统的版本是CentOS 8.5.2111
在这里插入图片描述
2、首次安装docker时需检查linux环境的内核版本,root登录时,uname -r可查看
在这里插入图片描述
3、检查是否已安装过docker,docker -version
在这里插入图片描述
4、centos8默认使用podman代替docker,所以需要containerd.io,那我们就安装一下就好了

执行命令:yum install https://download.docker.com/linux/fedora/30/x86_64/stable/Packages/containerd.io-1.2.6-3.3.fc30.x86_64.rpm
在这里插入图片描述
首次安装docker,这步我是直接成功了没有任何报错。

5、安装其他依赖
yum install -y yum-utils device-mapper-persistent-data lvm2

yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
在这里插入图片描述
6、执行安装docker, yum install docker-ce
在这里插入图片描述

7、查看docker是否安装成功,docker -v
在这里插入图片描述

8、启动docker,systemctl start docker

9、测试docker实例,拉取hello-world镜像,docker pull hello-world
在这里插入图片描述
10、启动镜像,docker run hello-world
在这里插入图片描述
看到以上提示说明启动成功。

3、docker安装mysql

1、查看mysql镜像,docker search mysql
在这里插入图片描述
2、拉取最新镜像,docker pull mysql:latest
在这里插入图片描述

3、查看镜像是否拉取成功,docker images | grep mysql
在这里插入图片描述

4、启动mysql容器
启动命令解析:
在这里插入图片描述
我这里启动时只设置数据库访问root密码: docker run -p 3306:3306 --name mysql -e MYSQL_ROOT_PASSWORD=root -d mysql

5、查看当前正在运行的容器,docker ps
在这里插入图片描述
6、进入mysql容器,docker exec -it mysql bash
在这里插入图片描述

7、连接mysql数据库,mysql -u root -p
在这里插入图片描述

8、查看当前数据库
在这里插入图片描述
经过以上步骤,说明docker成功安装并启动了mysql。

使用docker搭建halo

1、拉取最新的halo镜像

docker pull halohub/halo

2、创建工作目录:mkdir -p /usr/soft/halo && cd /usr/soft/halo
3、下载示例配置文件到 工作目录
wget https://dl.halo.run/config/application-template.yaml -O ./application.yaml
4、编辑配置文件,配置数据库或者端口等,如需配置请参考 配置参考

vim application.yaml
我修改的配置文件:
server:
  port: 8090

  # Response data gzip.
  compression:
    enabled: true
spring:
  jpa:
    database-platform: org.hibernate.dialect.MySQLDialect
  datasource:

    # H2 database configuration.
    # driver-class-name: org.h2.Driver
    #url: jdbc:h2:file:~/.halo/db/halo
    #username: admin
    #password: 123456

    # MySQL database configuration.
    driver-class-name: com.mysql.cj.jdbc.Driver
    url: jdbc:mysql://xx.xxx.xx.xx:3306/halodb?characterEncoding=utf8&useSSL=false&serverTimezone=Asia/Shanghai&allowPublicKeyRetrieval=true
    username: root
    password: root

  # H2 database console configuration.
  h2:
    console:
      settings:
        web-allow-others: false
      path: /h2-console
      enabled: false

halo:

  # Your admin client path is https://your-domain/{admin-path}
  admin-path: admin

  # memory or level
  cache: memory

5、启动halo容器

docker run -it -d --name halo -p 8090:8090 -v /usr/soft/halo:/root/.halo  --restart=unless-stopped halohub/halo:1.5.4

6、查看容器是否启动成功
docker ps
7、查看日志文件容器启动是否有报错:

tail logs/spring.log

在这里插入图片描述
没有任何异常日志说明启动成功,可以正常访问。
8、输入http://公网ip:8090或者http://公网ip:8090/admin即可访问。

至此,halo博客搭建完成。要配置域名访问继续往下看。

9、配置nginx动态代理实现域名访问(nginx安装步骤参考:https://blog.csdn.net/qq_39946015/article/details/128119147)

进入nginx配置文件目录,配置域名和反向代理。

server {
    listen       80;
    listen  [::]:80;
    #server_name  localhost;
    server_name www.yonmei.xyz;

    #access_log  /var/log/nginx/host.access.log  main;

    location / {
            proxy_pass http://xx.xxx.xx.xx:8090/;
        }
        .......

重启nginx之后,即可直接通过域名访问博客网站。
在这里插入图片描述

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值