Files
www/README.md
zhuhjay 22e48d9558 build(www): 添加 Drone CI 流水线配置
- 新增 .drone.yml 文件用于定义 CI/CD 流程
- 配置了基于 Docker 的部署步骤
- 设置了工作区和卷映射以支持持久化数据
- 添加了构建准备阶段和 Docker 部署阶段
- 定义了环境变量和代理设置
- 配置了 artifacts 目录的处理逻辑
- 添加了 timezone 映射以确保时间同步
- 设置了 docker.sock 映射以支持 Docker in Docker
2025-11-01 13:36:00 +08:00

180 lines
4.2 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# ZhuHJay Blog
[![Node.js](https://img.shields.io/badge/Node.js-20.19.2-339933?style=flat-square&logo=node.js)](https://nodejs.org/)
[![VuePress](https://img.shields.io/badge/VuePress-1.9.7-4fc08d?style=flat-square&logo=vue.js)](https://vuepress.vuejs.org/)
[![License](https://img.shields.io/badge/License-MIT-blue.svg?style=flat-square)](LICENSE)
一个基于 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 (可选,用于容器化部署)
### 本地开发
1. **克隆项目**
```bash
git clone <repository-url>
cd www-master
```
2. **安装依赖**
```bash
npm install
# 或
yarn install
```
3. **启动开发服务器**
```bash
npm run dev
```
访问 http://localhost:8080 查看博客
4. **构建生产版本**
```bash
npm run build
```
### Docker 部署
1. **构建镜像**
```bash
docker build -t www:latest .
```
2. **使用 Docker Compose 部署**
```bash
docker-compose up -d
```
访问 http://localhost:3000 查看部署的博客
## 📝 文章管理
### 添加新文章
1. 在相应的 `blogs/` 子目录下创建 Markdown 文件
2. 使用以下格式的 Front Matter
```markdown
---
title: 文章标题
date: 2022-01-25
sidebar: 'auto'
tags:
- 标签1
- 标签2
categories:
- 分类名
---
文章内容...
```
### 文章分类
- **Java 技术**: `blogs/java/`
- Java 8 特性: `blogs/java/java8/`
- JVM 深入: `blogs/java/jvm/`
- **前端技术**: `blogs/frontend/`
- **数据库技术**: `blogs/database/`
## ⚙️ 配置说明
### 站点配置
主要配置文件位于 `.vuepress/config.js`,包含:
- **基本信息**: 站点标题、描述、作者信息
- **主题配置**: 导航栏、侧边栏、友链等
- **功能设置**: 搜索、分类、标签等
### 主要配置项
- **title**: 站点标题
- **description**: 站点描述
- **author**: 作者信息
- **nav**: 导航栏配置
- **sidebar**: 侧边栏配置
- **blogConfig**: 博客相关配置
## 🔧 开发指南
### 自定义主题
如需自定义主题样式,可以在 `.vuepress/styles/` 目录下添加样式文件。
### 插件扩展
可以通过修改 `.vuepress/config.js` 添加 VuePress 插件来扩展功能。
## 🚢 部署
### 生产环境部署
1. 构建静态文件:`npm run build`
2. 将 `public/` 目录部署到 Web 服务器
3. 或使用提供的 Docker 镜像进行容器化部署
### 持续集成
项目支持通过 Docker 进行自动化部署,可以集成到 CI/CD 流水线中。
## 📄 许可证
本项目基于 MIT 许可证开源,详见 [LICENSE](LICENSE) 文件。
## 👤 作者
**ZhuHJay**
- 邮箱: zhuhjay@qq.com
- 码云: https://gitee.com/ZhuHJay
## 🤝 贡献
欢迎提交 Issue 和 Pull Request 来帮助改进项目!
---
⭐ 如果这个项目对你有帮助,请给它一个星标!