基本按照官网教程
因用的是mysql数据库,并且数据库连接没在一台机子上,所以在创建容器的时候会有一些改动

--net host		#配置
/usr/tools/halo		#为自己application.yaml文件所在位置

docker run  -d --net host --restart=always --name halo  -p 1108:1108  -v /usr/tools/halo:/root/.halo ruibaby/halo

application配置

server:
  port: 1102
spring:
  datasource:
    type: com.zaxxer.hikari.HikariDataSource

    # H2 Database 配置,如果你需要使用 MySQL,请注释掉该配置并取消注释 MySQL 的配置。
    #driver-class-name: org.h2.Driver
    #url: jdbc:h2:file:~/.halo/db/halo
    #username: admin
    #password: 123456

    # MySQL 配置,如果你需要使用 H2Database,请注释掉该配置并取消注释上方 H2Database 的配置。
    driver-class-name: com.mysql.cj.jdbc.Driver
    url: jdbc:mysql://192.168.**.**:***/halodb?characterEncoding=utf8&useSSL=false&serverTimezone=Asia/Shanghai&allowPublicKeyRetrieval=true
    username: ***
    password: ***

  # H2 Database 的控制台相关配置,如果你使用的是 MySQL ,请注释掉下方内容。
  # h2:
  #  console:
  #    settings:
  #      web-allow-others: false
  #    path: /h2-console
  #    enabled: false
#访问后端时的路径
halo:
  admin-path: ***

更新

# 停止容器
sudo docker stop halo

# 拉取最新的 Halo 镜像
sudo docker pull ruibaby/halo

docker run  -d --net host --restart=always --name halo  -p 1108:1108  -v /usr/tools/halo:/root/.halo ruibaby/halo