- 新增 .drone.yml 文件用于定义 CI/CD 流程 - 配置了基于 Docker 的部署步骤 - 设置了工作区和卷映射以支持持久化数据 - 添加了构建准备阶段和 Docker 部署阶段 - 定义了环境变量和代理设置 - 配置了 artifacts 目录的处理逻辑 - 添加了 timezone 映射以确保时间同步 - 设置了 docker.sock 映射以支持 Docker in Docker
4.2 KiB
4.2 KiB
ZhuHJay Blog
一个基于 VuePress 和 vuepress-theme-reco 主题构建的个人技术博客,专注于 Java、JavaScript、数据库等技术分享。
🌟 特性
- 现代化设计: 使用 vuepress-theme-reco 主题,界面简洁美观
- 技术导向: 涵盖 Java、JavaScript、Redis 等主流技术栈
- 容器化部署: 支持 Docker 容器化部署
- 移动端适配: 响应式设计,完美支持移动设备
- 搜索功能: 内置搜索,快速定位文章内容
📁 项目结构
├── blogs/ # 博客文章目录
│ ├── database/ # 数据库相关文章
│ │ └── redis/ # Redis 文章
│ ├── frontend/ # 前端技术文章
│ └── java/ # Java 技术文章
│ ├── java8/ # Java 8 特性
│ └── jvm/ # JVM 相关
├── .vuepress/ # VuePress 配置
│ ├── config.js # 站点配置
│ └── public/ # 静态资源
├── public/ # 构建输出目录
├── Dockerfile # Docker 镜像构建
├── compose.yaml # Docker Compose 配置
└── package.json # 项目依赖配置
🛠️ 技术栈
- 静态站点生成器: VuePress 1.9.7
- 主题: vuepress-theme-reco 1.6.16
- 运行时: Node.js 20.19.2
- 容器化: Docker + Nginx
- 部署: Docker Compose
🚀 快速开始
环境要求
- Node.js >= 20.19.2
- npm 或 yarn
- Docker (可选,用于容器化部署)
本地开发
-
克隆项目
git clone <repository-url> cd www-master -
安装依赖
npm install # 或 yarn install -
启动开发服务器
npm run dev访问 http://localhost:8080 查看博客
-
构建生产版本
npm run build
Docker 部署
-
构建镜像
docker build -t www:latest . -
使用 Docker Compose 部署
docker-compose up -d访问 http://localhost:3000 查看部署的博客
📝 文章管理
添加新文章
- 在相应的
blogs/子目录下创建 Markdown 文件 - 使用以下格式的 Front Matter:
---
title: 文章标题
date: 2022-01-25
sidebar: 'auto'
tags:
- 标签1
- 标签2
categories:
- 分类名
---
文章内容...
文章分类
- Java 技术:
blogs/java/- Java 8 特性:
blogs/java/java8/ - JVM 深入:
blogs/java/jvm/
- Java 8 特性:
- 前端技术:
blogs/frontend/ - 数据库技术:
blogs/database/
⚙️ 配置说明
站点配置
主要配置文件位于 .vuepress/config.js,包含:
- 基本信息: 站点标题、描述、作者信息
- 主题配置: 导航栏、侧边栏、友链等
- 功能设置: 搜索、分类、标签等
主要配置项
- title: 站点标题
- description: 站点描述
- author: 作者信息
- nav: 导航栏配置
- sidebar: 侧边栏配置
- blogConfig: 博客相关配置
🔧 开发指南
自定义主题
如需自定义主题样式,可以在 .vuepress/styles/ 目录下添加样式文件。
插件扩展
可以通过修改 .vuepress/config.js 添加 VuePress 插件来扩展功能。
🚢 部署
生产环境部署
- 构建静态文件:
npm run build - 将
public/目录部署到 Web 服务器 - 或使用提供的 Docker 镜像进行容器化部署
持续集成
项目支持通过 Docker 进行自动化部署,可以集成到 CI/CD 流水线中。
📄 许可证
本项目基于 MIT 许可证开源,详见 LICENSE 文件。
👤 作者
ZhuHJay
🤝 贡献
欢迎提交 Issue 和 Pull Request 来帮助改进项目!
⭐ 如果这个项目对你有帮助,请给它一个星标!