【Docker项目实战】使用Docker部署Hibiscus.txt简单日记工具

【Docker项目实战】使用Docker部署Hibiscus.txt简单日记工具

  • 一、Hibiscus介绍
    • 1.1 Hibiscus简介
    • 1.2 主要特点
  • 二、本次实践规划
    • 2.1 本地环境规划
    • 2.2 本次实践介绍
  • 三、本地环境检查
    • 3.1 检查Docker服务状态
    • 3.2 检查Docker版本
    • 3.3 检查docker compose 版本
  • 四、拉取镜像
  • 五、部署Hibiscus.txt服务
    • 5.1 创建部署目录
    • 5.2 编辑config.txt文件
    • 5.3 编辑部署文件
    • 5.3 创建Hibiscus容器
    • 5.4 查看Hibiscus容器状态
    • 5.5 查看Hibiscus容器日志
  • 六、访问Hibiscus服务
    • 6.1 访问初始页
    • 6.2 登录Hibiscus首页
  • 七、基本使用
    • 7.1 编辑日记
    • 7.2 笔记功能
  • 八、总结

一、Hibiscus介绍

1.1 Hibiscus简介

Hibiscus.txt 是一款专为追求极简与实用性的用户设计的纯文本日记工具。它主要是为了满足作者个人的需求而开发,强调简约和实用性,适合那些寻求无冗余、直接操作体验的用户使用。通过每天提供一个新的文本文件来记录您的日常或重要事件,Hibiscus.txt 让日记记录变得简单而不失个性。

1.2 主要特点

  • 每日新文本文件:系统每天自动生成一个新的文本文件供您记录当天的心情、事件或是任何您想保存的文字。
  • 笔记命名功能:可以为重要的里程碑、大事件或游戏成就等保存带有名称的笔记,便于日后查找和回忆。
  • 简便的备份选项:支持将日记文件轻松导出为.zip格式的压缩包,方便进行备份和存档。
  • 极致简约的设计理念:坚持一切从简的原则,不包含数据库、加密技术、OAuth认证等复杂元素。甚至密码也以明文形式存储——这在某些情况下可能被视为一种特色而非缺陷。
  • Docker 支持:对于希望获得最佳运行环境的用户来说,Hibiscus.txt 提供了 Docker 支持,确保软件可以在几乎任何环境下稳定运行。
  • Telegram 通知(可选):针对安全性有所顾虑的用户,可以选择启用 Telegram 通知功能,以便在发生失败的登录尝试时及时收到警告。

二、本次实践规划

2.1 本地环境规划

本次实践为个人测试环境,操作系统版本为|Ubuntu 22.04.1。

hostnameIP地址操作系统版本Docker版本部署项目
jeven01192.168.3.88Ubuntu 22.04.1 LTS27.1.1Hibiscus.txt

2.2 本次实践介绍

1.本次实践部署环境为个人测试环境,生产环境请谨慎;
2.在Docker环境下部署Hibiscus.txt简单日记工具。

三、本地环境检查

3.1 检查Docker服务状态

检查Docker服务是否正常运行,确保Docker正常运行。

root@jeven01:~#  systemctl status docker
● docker.service - Docker Application Container EngineLoaded: loaded (/lib/systemd/system/docker.service; enabled; vendor preset: enabled)Active: active (running) since Sun 2025-04-20 07:26:39 UTC; 4 days ago
TriggeredBy: ● docker.socketDocs: https://docs.docker.comMain PID: 1063 (dockerd)Tasks: 30Memory: 1.7GCPU: 3min 9.728sCGroup: /system.slice/docker.service├─1063 /usr/bin/dockerd -H fd:// --containerd=/run/containerd/containerd.sock

3.2 检查Docker版本

检查Docker版本

root@jeven01:~# docker -v
Docker version 27.1.1, build 6312585

3.3 检查docker compose 版本

检查Docker compose版本,确保2.0以上版本。

root@jeven01:~# docker compose version
Docker Compose version v2.19.1

四、拉取镜像

拉取Hibiscus.镜像,拉取相关镜像如下所示:

root@jeven01:~# docker pull  git.a71.su/andrew71/hibiscus:latest
latest: Pulling from andrew71/hibiscus
Digest: sha256:427858e7e351cd017cfb8ca92dcf47fb09c2f0519373e7c635f3b81a6119af93
Status: Image is up to date for git.a71.su/andrew71/hibiscus:latest
git.a71.su/andrew71/hibiscus:latest

五、部署Hibiscus.txt服务

5.1 创建部署目录

  • 创建部署目录
mkdir -p /data/hibiscus{config,data} &&  cd /data/hibiscus

5.2 编辑config.txt文件

在/data/hibiscus/config目录下,新建及编辑config.txt文件,内容如下:

vim config/config.txt
username=admin
password=admin
port=7101
timezone=CTT
grace_period=0s
language=en
theme=default
title=jeven日记本
log_to_file=false
log_file=config/log.txt
enable_scram=false
  • 以上配置文件的配置项说明:
参数说明
usernameadmin用户名,可根据需要修改。
passwordadmin对应用户的密码,可根据需要修改。
port7101应用运行的端口号。如果使用 Docker,请勿更改此值。
timezoneLocalIANA 时区数据库标识符(例如 “UTC”、“Local”、“Europe/Moscow” 等)。
如果无法解析,则默认为 “Local”。
CTT 表示中国标准时间(China Standard Time)。
grace_period0s新一天开始后,切换到下一天文件之前的缓冲时间。
例如:设置为 2h30m,则文件将在凌晨 2:30 切换。
languageenISO-639 语言代码,目前支持 en(英语)和 ru(俄语)。
themedefault可选择的主题,支持以下选项:
defaulthigh-contrastlavendergruvboxsans
title🌺 Hibiscus.txt页面标题,显示在页面顶部。
log_to_filefalse是否将日志写入文件。
log_fileconfig/log.txt如果启用了日志记录,日志文件的存储路径。
enable_scramfalse如果在 100 秒内发生 3 次或以上的登录失败,是否关闭应用程序。

5.3 编辑部署文件

  • 想要在直接使用命令部署,可参考如下:
ocker run -d \--restart unless-stopped \--name hibiscus \-p 8800:7101 \-v $(pwd)/config:/config \-v $(pwd)/data:/data \-v /etc/TZ:/etc/timezone:ro \-v /etc/localtime:/etc/localtime:ro \git.a71.su/andrew71/hibiscus:latest

在`部署目录下,创建docker-compose.yaml文件,如下所示:

vim docker-compose.yaml
version: "3.8"services:hibiscus:image: git.a71.su/andrew71/hibiscus:latestcontainer_name: hibiscusrestart: unless-stoppedports:- "8800:7101"volumes:- ./config:/config- ./data:/data- /etc/TZ:/etc/timezone:ro- /etc/localtime:/etc/localtime:ro

5.3 创建Hibiscus容器

执行以下命令,创建Hibiscus容器。

root@jeven01:/data/hibiscus# docker compose up -d
[+] Running 2/2✔ Network hibiscus_default  Created                                                                                                              0.1s✔ Container hibiscus        Started                                                                                                              0.2s
root@jeven01:/data/hibiscus#

5.4 查看Hibiscus容器状态

检查建Hibiscus容器运行状态,确保建Hibiscus容器正常启动。

root@jeven01:/data/hibiscus# docker compose ps
NAME                IMAGE                                 COMMAND             SERVICE             CREATED              STATUS              PORTS
hibiscus            git.a71.su/andrew71/hibiscus:latest   "/hibiscus"         hibiscus            About a minute ago   Up About a minute   0.0.0.0:8800->7101/tcp, :::8800->7101/tcp

5.5 查看Hibiscus容器日志

  • 查看Hibiscus容器日志
root@jeven01:/data/hibiscus# docker compose logs
hibiscus  | time=2025-04-24T15:49:09.797Z level=INFO msg="🌺 Website working" port=7101

在这里插入图片描述

六、访问Hibiscus服务

6.1 访问初始页

浏览器地址: https://<个人的服务器IP>,访问Hibiscus.txt的初始页。注意需要https访问,使用http访问会直接访问失败。如果无法访问,请确保宿主机的防火墙已关闭或已放行相关端口,对于云服务器还需配置相应的安全组规则。

在这里插入图片描述

6.2 登录Hibiscus首页

我们在config.txt配置中设置登录账号为admin/admin,直接登录即可。

在这里插入图片描述

七、基本使用

7.1 编辑日记

在主页的编辑框内,编辑日记内容。

在这里插入图片描述

日记编辑完毕后,点击Hibiscus.txt主页下方的Previous days选项。

在这里插入图片描述

  • 在日记列表中,选择当天或其余天,即可查看日记内容。

在这里插入图片描述
在这里插入图片描述

7.2 笔记功能

  • 点击Hibiscus.txt主页下方的notes选项

在这里插入图片描述

  • 选择“new note”,开始新建笔记。

在这里插入图片描述

  • 编辑该笔记名称,如下所示:

在这里插入图片描述

  • 编辑笔记内容,完成后保存即可。

在这里插入图片描述
在这里插入图片描述

八、总结

通过本次实践,我们了解了如何使用 Docker 快速部署 Hibiscus.txt 日记工具,体验了从环境准备到服务访问的全过程。Hibiscus.txt 的极简设计使得日记记录变得简单而高效,同时其支持自定义配置和主题选择,能够很好地满足个性化需求。利用 Docker 部署 Hibiscus.txt 不仅简化了安装流程,还提供了一个稳定、易于管理的运行环境,非常适合希望专注于内容创作而非系统维护的用户。

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

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

相关文章

openharmony之启动恢复子系统详解

OpenHarmony的启动恢复子系统负责整个系统的启动流程&#xff0c;其中init进程是整个系统启动的第一个用户态进程&#xff08;PID1&#xff09;&#xff0c;承担着系统初始化的核心职责 &#x1f3af; 目录结构 &#x1f4cb; 理论基础&#x1f50d; 源码结构分析⚙️ 配置体系…

Jenkins + SonarQube 从原理到实战四:Jenkins 与 Gerrit 集成并实现自动任务

前言 前面我们已经部署了 SonarQube&#xff0c;并加入了 sonar-cxx 插件&#xff0c;实现了 C/C 代码扫描&#xff0c;同时打通了 Windows AD 域&#xff0c;实现了 AD 用户登录与权限管控。 原计划本篇&#xff08;第四篇&#xff09;完成 Jenkins Gerrit Sonar 的 CI 部分…

基于Spring Boot与Redis的电商场景面试问答解析

基于Spring Boot与Redis的电商场景面试问答解析 第一轮&#xff1a;基础问题 面试官&#xff1a; 你好小C&#xff0c;今天我们以电商场景为背景进行技术面试。第一个问题&#xff0c;解释一下Spring Boot的核心优势是什么&#xff1f; 小C&#xff1a; Spring Boot就是开箱即用…

CUDA安装,pytorch库安装

一、CUDA安装 1.查看自己电脑适配的CUDA的最高版本 在命令提示符里输入nvidia-smi表格右上角显示的CUDA版本是该电脑适配的最高版本一般下载比该版本低一点的版本&#xff0c;因为会更稳定 由于本机没有GPU所以会出现这个报错&#xff0c;如果有GPU会出现如下报告&#xff1a…

力扣 第 463 场周赛

1. 按策略买卖股票的最佳时机 给你两个整数数组 prices 和 strategy&#xff0c;其中&#xff1a; prices[i] 表示第 i 天某股票的价格。 strategy[i] 表示第 i 天的交易策略&#xff0c;其中&#xff1a; -1 表示买入一单位股票。 0 表示持有股票。 1 表示卖出一单位股票。 同…

Matplotlib 可视化大师系列(六):plt.imshow() - 绘制矩阵与图像的强大工具

目录Matplotlib 可视化大师系列博客总览Matplotlib 可视化大师系列&#xff08;六&#xff09;&#xff1a;plt.imshow() - 绘制矩阵与图像的强大工具一、 plt.imshow() 是什么&#xff1f;何时使用&#xff1f;二、 函数原型与核心参数三、 从入门到精通&#xff1a;代码示例示…

小游戏AssetBundle加密方案解析

据游戏工委数据统计&#xff0c;2025年1-6月&#xff0c;国内小程序游戏市场实际销售收入232.76亿元&#xff0c;同比增长40.2%。其中内购产生收入153.03亿元&#xff0c;占比65.7%&#xff0c;呈逐年提升趋势。爆款频出的小游戏&#xff0c;已经成为当下游戏行业的重要增长点。…

linux编程----网络通信(TCP)

1.TCP特点1.面向数据流&#xff1b;2.有连接通信&#xff1b;3.安全可靠的通信方式&#xff1b;4.机制复杂&#xff0c;网络资源开销大&#xff1b;5.本质只能实现一对一的通信&#xff08;可使用TCP的并发方式实现一对多通信&#xff09;&#xff1b;2.TCP的三次握手与四次挥手…

HTTP请求的执行流程

HTTP请求的执行流程是一个系统化的过程&#xff0c;涉及多个网络协议和交互步骤。以下是完整的流程分解&#xff0c;结合关键技术和逻辑顺序&#xff1a;&#x1f310; 一、连接准备阶段​​URL解析与初始化​​客户端&#xff08;浏览器/应用&#xff09;解析目标URL&#xff…

联想win11笔记本音频失效,显示差号(x)

该博客可以解答 常见问题详情 Win10系统安装更新后右下角声音出现红叉&#xff0c;电脑也没有声音&#xff0c; 通过设备管理器查看“系统设备”发现“音频部分“出现黄色感叹号&#xff0c; 更新驱动、卸载驱动与第三方工具检测安装后重启都不行。 故障原因 应该是用户曾经…

elasticsearch 7.x elasticsearch 使用scroll滚动查询中超时问题案例

一 问题 1.1 问题描述 2025-08-21 16:57:53.646 | WARN ||||||||||||| scheduling-1 | ElasticsearchRestTemplate | Could not clear scroll: Unable to parse response body; nested exception is ElasticsearchStatusException [Unable to parse response body]; nested: …

高并发内存池(1)-定长内存池

高并发内存池&#xff08;1&#xff09;-定长内存池 可以采用两种方式&#xff1a; 方式1&#xff1a; template <size_t N>方式2&#xff1a; template <class T>获取到T对象大小的内存池&#xff0c;更推荐使用方式二&#xff0c;因为可以动态灵活调整类型 需要的…

第三阶段sql server数据-4:数据库脚本生成,备份与还原,分离与附加操作的图文步骤

1_生成数据库脚本&#xff08;1&#xff09;在数据库上右键选择任务&#xff08;2&#xff09;选择生成脚本&#xff08;3&#xff09;选择下一步&#xff0c;如果下次不想显示此页面&#xff0c;可勾选不再显示此页&#xff08;4&#xff09;如果导出全部数据&#xff0c;选择…

【C++闯关笔记】STL:string的学习和使用(万字精讲)

​系列文章目录 第零篇&#xff1a;从C到C入门&#xff1a;C有而C语言没有的基础知识总结-CSDN博客 第一篇&#xff1a;【C闯关笔记】封装①&#xff1a;类与对象-CSDN博客 第二篇&#xff1a;【C闯关笔记】封装②&#xff1a;友元与模板-CSDN博客 第三篇&#xff1a;【C闯…

06 - spring security角色和权限设置

spring security角色和权限设置 文档 00 - spring security框架使用01 - spring security自定义登录页面02 - spring security基于配置文件及内存的账号密码03 - spring security自定义登出页面04 - spring security关闭csrf攻击防御05 - spring security权限控制 角色和权限…

如何实现文档处理全流程自动化?

在处理文本文档、电子邮件、视频音频、社媒帖子等非结构化数据时&#xff0c;我们经常发现这些数据难以用传统的数据库表格进行存储和管理&#xff0c;因为其没有明确的结构和标准化的格式&#xff0c;因此&#xff0c;这类数据处理难度较大&#xff0c;当传统“人眼Excel”模式…

Java Main无法初始化主类的原因与解决方法(VsCode工具)

个人操作 由于上传git将target目录也上传了所以在本地删除target之后再重新同步更新动作然后直接在vscode工具上run本地项目运行报错&#xff0c;报错信息如下 报错信息分析原因1. 工具配置 用 VS Code 的“Run”运行按钮时&#xff0c;是否会自动编译&#xff0c;取决于你的 V…

Azure Kubernetes Service (AKS)

Overview AKS&#xff08;Azure Kubernetes Service&#xff09; 是 Microsoft Azure 提供的一种托管Kubernetes 服务&#xff0c;旨在简化 Kubernetes 集群的部署、管理和操作。轻松运行和扩展基于容器的应用程序&#xff0c;而无需管理 Kubernetes 本身的基础设施。 AKS与 …

基于SpringBoot的校园信息共享系统【2026最新】

作者&#xff1a;计算机学姐 开发技术&#xff1a;SpringBoot、SSM、Vue、MySQL、JSP、ElementUI、Python、小程序等&#xff0c;“文末源码”。 专栏推荐&#xff1a;前后端分离项目源码、SpringBoot项目源码、Vue项目源码、SSM项目源码、微信小程序源码 精品专栏&#xff1a;…

PyTorch API 3 - distributed

文章目录分布式通信包 - torch.distributed后端支持PyTorch 内置的后端选择哪个后端&#xff1f;常见环境变量选择使用的网络接口其他NCCL环境变量基础概念初始化返回类型&#xff1a;boolTCP初始化共享文件系统初始化环境变量初始化方法初始化后操作关闭处理重新初始化组Devic…