这是一个用ai开发的基于 Go (Gin) 和 Vue 3的个人博客系统。
在线网址:zhu-ying.online(已停止服务)
- 文章管理: 支持 Markdown 编辑器,实时预览,代码高亮。
- 分类与标签: 灵活的内容组织方式。
- 评论系统: 访客可以发表评论(支持嵌套回复)。
- 响应式设计: 适配桌面端和移动端(保持一致的布局)。
- 后台管理: 包含文章发布、编辑、删除等管理功能。
- Docker 部署: 一键容器化部署,开箱即用。
- 语言: Go (Golang)
- Web 框架: Gin
- ORM: GORM
- 数据库: MySQL
- 配置管理: Viper
- 核心框架: Vue 3, Vite
- UI 组件库: Element Plus
- 状态管理: Pinia
- 路由: Vue Router
- Markdown: v-md-editor, marked, highlight.js
- 工具: Axios, Dayjs
- 容器化: Docker, Docker Compose
my-blog/ ├── backend/ # 后端项目代码 (Go) │ ├── cmd/ # 入口文件 │ ├── config/ # 配置文件 │ ├── internal/ # 业务逻辑 │ ├── uploads/ # 上传文件存储 │ └── Dockerfile # 后端构建文件 ├── frontend/ # 前端项目代码 (Vue 3) │ ├── src/ # 源代码 │ └── Dockerfile # 前端构建文件 ├── docker-compose.yml # Docker 编排文件 └── README.md # 项目说明文档
确保本地已安装 Docker 和 Docker Compose。
git clone https://github.com/zyy125/my-blog.git
cd my-blog后端配置:
检查 backend/config/ 目录,确保存在 config.yaml。如果不存在,请复制示例配置:
cp backend/config/config.example.yaml backend/config/config.yaml数据库配置:
在 docker-compose.yml 中,您可以修改 MySQL 的环境变量(如密码):
environment:
MYSQL_ROOT_PASSWORD: root
MYSQL_DATABASE: my_blog_db
MYSQL_USER: user
MYSQL_PASSWORD: password在项目根目录下运行:
docker compose up -d --build该命令将自动构建前端和后端镜像,并启动 MySQL、后端和前端容器。
- 前台页面: http://localhost
- 后端接口: http://localhost:8080
如果您需要在本地进行开发调试:
- 启动一个本地 MySQL 实例。
- 创建数据库
my_blog_db。 - 修改
backend/config/config.yaml中的数据库连接信息(Host 改为localhost或127.0.0.1)。
cd backend
go mod download
go run cmd/main.gocd frontend
npm install
npm run devMIT License