halo centos + docker 部署

  • 首先我们创建net
docker network create common-net

由于我使用的centos+docker 部署服务部分配置和官网有一部分出入 以下是我的配置

  1. mysql 相关配置 以及初始化化数据库
mkdir -p ~/mysql
docker pull mysql
docker run --name mysql -v ~/mysql:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=mypassword -p 3306:3306 --net common-net --restart=unless-stopped -d mysql
docker exec -it mysql /bin/bash
mysql -u root -p
create database halodb character set utf8mb4 collate utf8mb4_bin;
  1. 接下来是halo的配置
mkdir ~/.halo && cd ~/.halo
curl https://dl.halo.run/config/application-template.yaml -o ./application.yaml
docker run -it -d --name halo -p 8090:8090 -v ~/.halo:/root/.halo --restart=always --net common-net -e JVM_OPTS="-Xmx512m -Xms512m" halohub/halo:1.5.2

使用redis作为缓存(可选配置)

# 使用
docker run -itd --name redis -p 6379:6379 --net common-net --restart=always redis --requirepass "mypassword"

我的配置文件

server:
  port: 8090
  compression:
    enabled: true
spring:
  redis:
     port: 6379
     database: 0
     host: redis
     password: mypassword
  datasource:
    # MySQL database configuration.
    driver-class-name: com.mysql.cj.jdbc.Driver
    url: jdbc:mysql://mysql:3306/halodb?characterEncoding=utf8&useSSL=false&serverTimezone=Asia/Shanghai&allowPublicKeyRetrieval=true
    username: root
    password: mypassword
halo:
  admin-path: admin
  cache: redis

接下来访问 {机器ip}:8090 就可以了

halo 官方链接