博客主题预览

23713bd9bae188abbb78c17bf404db5.png

07e1f84f7d45f6c5eaf917a2466bdfd.png

95e0321d27bb20739353d88b413e471.png

部署环境

Docker 安装 🔗

Docker Compose安装 🔗

开始部署

Halo + MySQL 的部署:

1.在系统任意位置创建一个文件夹,此文档以 halo 为例。

mkdir halo && cd halo  # 创建名为 "halo" 的文件夹并进入

2.当前目录创建 docker-compose.yaml

mkdir docker-compose.yaml

3.创建完“docker-compose.yml”这个文件后,终端输入“vim docker-compose.yml”来编辑,如下:

vim docker-compose.yml

4.将以下内容复制到docker-compose.yml

version: "3"

services:
  halo:
    image: registry.fit2cloud.com/halo/halo:2.16
    restart: on-failure:3
    depends_on:
      halodb:
        condition: service_healthy
    networks:
      halo_network:
    volumes:
      - ./halo2:/root/.halo2
    ports:
      - "8090: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
      # MySQL 的密码,请保证与下方 MYSQL_ROOT_PASSWORD 的变量值一致。
      - --spring.r2dbc.password=o#DwN&JSa56
      - --spring.sql.init.platform=mysql
      # 外部访问地址,请根据实际需要修改
      - --halo.external-url=http://localhost:8090/

  halodb:
    image: mysql:8.1.0
    restart: on-failure:3
    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:/var/lib/mysql
      - ./mysqlBackup:/data/mysqlBackup
    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:
Vim文本编辑器常用指令

Vim文本编辑器

Vim 是一款常用的文本编辑器,通常在命令行环境下使用。以下是一些 Vim 常用的指令:

  • 进入编辑模式:
    • 按下 "i" 进入插入模式,在此模式下可以编辑文本。
    • 按下 "a" 进入插入模式,但光标位于当前字符的后面。
  • 保存和退出:
    • 在正常模式下,输入 ":w" 可以保存文件。
    • 输入 ":q" 可以退出 Vim。
    • 输入 ":wq" 可以保存并退出。
    • 输入 ":q!" 可以强制退出而不保存。
  • 移动光标:
    • 使用方向键或 "h"(左)、"j"(下)、"k"(上)、"l"(右)来移动光标。
    • 在正常模式下,可以使用 "gg" 跳到文件开头,"G" 跳到文件末尾。
  • 复制、剪切和粘贴:
    • 在正常模式下,将光标移动到要复制或剪切的文本上,按 "v" 进入可视模式,选择文本,然后按 "y" 复制或 "x" 剪切。
    • 将光标移动到要粘贴的位置,按 "p" 粘贴。
  • 撤销和重做:
    • 在正常模式下,按下 "u" 可以撤销上一步操作。
    • 按下 "Ctrl + r" 可以重做。

这些只是 Vim 的一些基本指令,Vim 有非常多的功能和指令,可以根据需要学习和使用。

编辑完后在项目目录,执行

docker compose up -d   #启动命令,会自动拉取容器并运行

完成之后根据docker-compose.yml文件中配置的映射端口, 访问 安装向导 进行系统初始化。

243308a9452be11618a29d86b7d17a5.png

1d13d3fcebb3b5172067861a5402f55.png

0ac6147be2dff7fea4e30ca79891bab.png

扩展

🔌 插件依赖

所有插件均为可选,不安装则不会出现对应功能。
部分插件可能已经预设在 Halo 内。
部分插件主题尚未适配。

更多插件请参见:https://github.com/halo-sigs/awesome-halo

🙆‍♂️在此感谢以下项目提供的支持: