【Docker】搭建强大易用的个人博客 - Halo

【Docker】搭建强大易用的个人博客 - Halo

前言

本教程基于绿联的NAS设备DX4600 Prodocker功能进行搭建,采用Halo + MySQL实例作为演示。

简介

Halo [ˈheɪloʊ] 是一个简洁,现代,快速且非常灵活的建站工具,它是由一位中国开发者制作并开源,使用Java语言开发。Halo主要用于搭建博客网站,它开箱即用,同时又提供了丰富的配置选项,可以满足各种定制化需求。

主要特点如下:

  • 简洁现代:Halo的界面设计非常简洁、现代,给人一种非常舒适的使用体验。同时,其代码结构也非常清晰,方便开发者进行定制和开发。

  • 强大的编辑器:Halo提供了Markdown和富文本两种编辑器,可以满足不同用户的需求。同时,其Markdown编辑器支持实时预览,使写作更加方便。

  • 多主题支持:Halo支持多种主题,用户可以根据自己的喜好选择。同时,Halo还支持自定义主题,用户可以自由创造。

  • 自带统计功能:Halo内置了访问量统计功能,用户可以清晰看到自己的网站访问情况。

  • 多平台发布:Halo提供了多种发布方式,支持Docker、JAR包、一键部署到云服务器等。

  • 开源免费:Halo是完全开源的,用户可以免费使用,同时也可以参与到Halo的开发中来。

总的来说,Halo是一个非常优秀的建站工具,无论是对于个人博客,还是对于小型企业网站,Halo都是一个非常好的选择。

部署

  1. 在“本地镜像”中添加halohub/halo:2.11.1​​镜像。

    目前 Halo 2 并未更新 Docker 的 latest 标签镜像,主要因为 Halo 2 不兼容 1.x 版本,因此我们需要在“本地镜像”中添加固定版本的标签镜像。

    ​​

  2. 在“镜像管理”中的“本地镜像”找到刚添加的镜像halohub/halo:2.11.1​,点击“创建容器”。

  3. 勾选“创建后启动容器”,然后直接点击“下一步”。

    ​​

  4. 将“基础设置”中的重启策略配置成“容器退出时总是重启容器”

  5. 在“命令”中输入以下命令

    如忽略此步骤,则默认 H2 数据库,在生产环境我们不推荐使用 H2 数据库,这可能因为操作不当导致数据文件损坏。

    参数名

    描述

    spring.r2dbc.url​​

    数据库连接地址,请根据自己数据库的实际地址进行修改。

    spring.r2dbc.username​​

    数据库用户名

    spring.r2dbc.password​​

    数据库密码,请根据自己数据库的实际密码进行修改。

    spring.sql.init.platform​​

    数据库平台名称

    --spring.r2dbc.url=r2dbc:pool:mysql://{host}:{port}/{database}
    --spring.r2dbc.username=root
    --spring.r2dbc.password={password}
    --spring.sql.init.platform=mysql
    

    ​​

  6. 在NAS中创建一个目录,用于保存halo的配置和我们的数据,在“存储空间”内与容器的/root/.halo2​​装载路径建立映射,并配置为“读写”类型。

    /root/.halo2​​为固定路径,不可修改!

    ​​

  7. 在“端口设置”中进行端口配置,“本地端口”指的是我们实际访问时要用到的端口,可以根据自己喜好进行配置,只要不与其他服务的端口有冲突就行。

    此处演示时使用的“本地端口”是“8090”端口,如不清楚端口是否被占用则默认“自动”即可。

    ​​

  8. 在“环境”中,点击“添加”,增加一行,名称:MYSQL_ROOT_PASSWORD​,值:{password},然后直接点击“下一步”。

    此处演示时使用的密码是“o#DwN&JSa56”,需要根据自己实际使用情况进行修改。

    此处的密码需要与前面“命令”中spring.r2dbc.password​参数的值保持一致!

  9. 在浏览器中输入{IP}:{Port}​,即可访问。

    ​​​​

相关链接

  • 官网:https://halo.run

  • 文档:https://docs.halo.run

  • 社区:https://bbs.halo.run

  • 主题仓库:https://halo.run/themes.html

  • 开源地址:https://github.com/halo-dev/halo

文章出处:https://blog.uptoz.cn/archives/NBbHBfXH
作者原创:@小小笔记大大用处 https://blog.uptoz.cn

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/578367.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

统信 UOS V20 一键安装 Oracle 11GR2(231017)单机版

Oracle 一键安装脚本,演示 统信 UOS V20 一键安装 Oracle 11GR2(231017)单机版过程(全程无需人工干预):(脚本包括 ORALCE PSU/OJVM 等补丁自动安装) ⭐️ 脚本下载地址:…

机器人码垛机:智能仓储系统的重要组成部分

随着科技的飞速进步,机器人技术已经渗透到了许多行业领域,其中,仓储业尤为显著。机器人码垛机作为智能仓储系统的重要组成部分,不仅提高了码垛效率,还降低了人工成本和安全风险。然而,在其广泛应用的同时&a…

Linux中安装JDK17.X

1、总体概述? 该操作方式适合centos或red hat环境 2.1、在线下载JDK安装包? 通过wget命令下载JDK17.X包 wget https://download.oracle.com/java/17/latest/jdk-17_linux-x64_bin.tar.gz 如果提示:没有wget命令就安装wget yum install w…

windows@浏览器主页被篡改劫持@360篡改主页@广告和弹窗设置@极速版

文章目录 360篡改浏览器主页方法1锁定浏览器主页 方法2注册表修改 360广告和弹窗360极速版 小结 360篡改浏览器主页 如果您使用360,且不想卸载它,那么当你启动360后,它可能会篡改你的浏览器(比如edge)的主页start page为360早期可能是通过修改快捷方式的target等属性,但是现在…

WebGIS开发

1.准备工作 高德开发API注册账号&#xff0c;创建项目拿到key和密钥 高德key 2.通过JS API引入高德API <html><head><meta charset"utf-8" /><meta http-equiv"X-UA-Compatible" content"IEedge" /><metaname&quo…

m脚本分析can记录文件

协助同事分析CAN日志文件&#xff0c;写了一个m脚本文件&#xff0c;帮助定位丢帧问题的发生。 log文件格式 分析代码 close all;clear;clc;%load data from a file [FileName,PathName,~] uigetfile(*.trc,Sample Dialog Box);fileID fopen([PathName FileName]); disp(Fi…

ATTCK学习笔记

ATT&CK 前言知识 威胁情报&#xff1a;一般为网络流量中或者操作系统上观察到的能高度表明计算机被入侵的痕迹&#xff0c;例如某病毒的Hash值、服务器的IP地址等等。简单来说&#xff0c;威胁情报就像是当计算机被入侵时所表现出来的某种特征&#xff0c;我们将这些威胁…

基于单片机bootloader的随笔

基于单片机bootloader的随笔 一、前言 一直觉得做产品开发需要得考虑一些安全策略&#xff0c;一般的设计固件时会进行bootloader设计&#xff0c;而设计一个高效且安全的定制Bootloader需要考虑以下几个关键因素&#xff1a; 1. 安全性 首先确保Bootloader自身的安全性&am…

Webpack生成企业站静态页面 - ajax请求

一些项目因需求不同&#xff0c;如需SEO或小项目&#xff0c;使用angular、react或vue就大材小用了。可以通过webpack、gulp这些构建工具&#xff0c;也能快速完成html页面开发&#xff0c;并且也能使用less/sass/styus等样式预编译功能&#xff0c;以及将js、html分模块、分组…

FreeRtos作业1

1.总结keil5下载代码和编译代码需要注意的事项 代码写完之后的操作流程 2.总结STM32Cubemx的使用方法和需要注意的事项 选择芯片型号 生成代码 3.总结STM32Cubemx配置GPIO的方法 4、使用定时器2让黄灯闪烁 /* USER CODE END Header */ /* Includes --------------------------…

数字孪生项目的开发工具

数字孪生项目的开发工具是实现数字孪生技术应用的关键。它们使得开发者能够创建、管理和优化数字孪生模型&#xff0c;以及与真实世界的实体进行交互。以下是一些数字孪生项目开发中常用的工具&#xff0c;希望对大家有所帮助。北京木奇移动技术有限公司&#xff0c;专业的软件…

【MySql数据库】MySQL5.7在navicat中建立连接报错1045及重装MySQL过程中3306端口号被占用释放的过程

文章目录 一、报错1、软件中报错2、navicat中报错3、数据库密码是正确的4、卸载数据库5、重装数据库发现3306端口被占用 二、释放3306端口1、找到3306端口对应的PID值2、释放3306端口号3、释放端口后&#xff0c;重装数据库 一、报错 1、软件中报错 2、navicat中报错 在navic…