什么是 Golog?

目录

Golog 是一款使用 Go 语言编写的简单、轻量博客程序,目标是为个人用户提供一个开箱即用、单文件部署、功能完备的博客解决方案。无需复杂的数据库配置,无需繁琐的依赖安装,下载单个可执行文件即可运行自己的博客。

核心设计理念

  • 简单至上:没有复杂的配置项,启动后通过向导完成初始化即可开始写作。
  • 单文件部署:主题、模板、静态资源全部内嵌在二进制文件中,部署时只需一个文件。
  • 移动优先:默认主题针对移动端进行了专门优化,确保读者在任何设备上都能获得良好体验。
  • 内容为王:支持 Mermaid 图表、LaTeX 公式等丰富内容格式,让技术博客更具表现力。

适用场景

  • 个人技术博客
  • 生活随笔记录
  • 轻量级知识库
  • 项目文档站点

快速开始

系统要求

  • 操作系统:macOS、Linux 或 Windows
  • 架构:amd64 或 arm64
  • 无需额外依赖(SQLite 已内嵌)

方式一:下载预编译二进制(推荐)

根据你的操作系统和架构前往 Release 下载对应的压缩包。

解压后得到 golog(或 Windows 下的 golog.exe

方式二:从源码编译

前置要求

  • Go 1.25 或更高版本
  • Make(可选,用于交叉编译)

编译步骤

# 克隆仓库
git clone https://github.com/giserlab/golog.git
cd golog

# 直接编译
go build -o golog main.go

# 或使用 Makefile 交叉编译(CGO_ENABLED=0)
make build

编译产物位于 bin/ 目录下。

运行

基本启动

./golog

默认监听端口为 5201,启动后在浏览器中访问:

http://localhost:5201

首次启动

如果目录下没有 config.json,应用会自动重定向到初始化向导(/wizard),按提示完成:

  1. 设置站点名称和描述
  2. 创建管理员账号
  3. 配置基本选项

命令行参数

# 指定端口
./golog --port 8080

# 启用 TLS
./golog --tls-crt server.crt --tls-key server.key

# 重置用户密码
./golog reset-password user@example.com

# 数据库迁移
./golog db:migrate        # 迁移到最新版本
./golog db:migrate 5      # 迁移到指定版本

常用选项

参数 简写 说明 默认值
--port -p 监听端口 5201
--tls-crt - TLS 证书路径 -
--tls-key - TLS 私钥路径 -

目录结构说明

首次运行后会自动生成以下目录和文件:

golog/
├── db.sqlite            # SQLite 数据库
├── data/
│   └── uploads/
│       ├── covers/      # 文章封面图
│       └── images/      # 文章内图片
└── ...

下一步

  • 访问管理后台撰写你的第一篇文章
  • 在设置中切换主题和个性化选项

开源许可

基于 MIT 许可开源,你可以自由使用、修改和分发。


2026-04-10 #介绍

留言

暂无留言