File size: 5,474 Bytes
a1b4689 5d4c685 7701176 5d4c685 7701176 5d4c685 7701176 5d4c685 7701176 5d4c685 7701176 5d4c685 7701176 5d4c685 7701176 5d4c685 7701176 5d4c685 7701176 5d4c685 7701176 5d4c685 7701176 5d4c685 7701176 5d4c685 7701176 5d4c685 7701176 5d4c685 7701176 5d4c685 7701176 5d4c685 7701176 5d4c685 7701176 5d4c685 7701176 5d4c685 7701176 5d4c685 7701176 5d4c685 7701176 5d4c685 7701176 5d4c685 7701176 5d4c685 7701176 5d4c685 7701176 5d4c685 7701176 5d4c685 7701176 5d4c685 7701176 5d4c685 7701176 5d4c685 7701176 5d4c685 7701176 5d4c685 7701176 5d4c685 7701176 5d4c685 7701176 5d4c685 7701176 5d4c685 7701176 5d4c685 7701176 5d4c685 7701176 5d4c685 7701176 5d4c685 7701176 5d4c685 7701176 5d4c685 7701176 5d4c685 7701176 5d4c685 7701176 5d4c685 7701176 5d4c685 7701176 5d4c685 7701176 5d4c685 7701176 5d4c685 7701176 5d4c685 7701176 5d4c685 7701176 5d4c685 7701176 5d4c685 |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 |
---
title: WordPress with SQLite
emoji: 🌐
colorFrom: blue
colorTo: purple
sdk: docker
sdk_version: "4.0"
app_file: app.py
pinned: false
---
# WordPress with SQLite for Hugging Face Spaces
这是一个专为 Hugging Face Spaces 设计的 WordPress 项目,使用 SQLite 数据库和 GitHub 自动备份功能。
## 🚀 快速部署到 Hugging Face Space
### 1. 创建 Hugging Face Space
1. 访问 [Hugging Face Spaces](https://huggingface.co/spaces)
2. 点击 "Create new Space"
3. 选择以下配置:
- **SDK**: `Docker`
- **Hardware**: `CPU basic` (推荐) 或更高
- **Visibility**: 根据需要选择
### 2. 上传项目文件
将以下文件上传到你的 Space:
```
Dockerfile
app.py
requirements.txt
config/wp_php.ini
.dockerignore (可选)
spaces.yml (可选)
```
### 3. 配置环境变量 (可选 - 用于GitHub备份)
在 Space 的 Settings 页面添加以下环境变量:
- `GITHUB_TOKEN`: 你的 GitHub Personal Access Token
- `GITHUB_REPO`: GitHub 仓库路径 (格式: `username/repository-name`)
#### 创建 GitHub Token:
1. 访问 GitHub Settings > Developer settings > Personal access tokens
2. 创建新 token,需要以下权限:
- `repo` (完整仓库访问权限)
- `contents:write` (写入仓库内容)
#### 准备 GitHub 仓库:
1. 创建一个新的 GitHub 仓库用于存储备份
2. 在仓库中创建 `backups` 文件夹
### 4. 启动 Space
保存设置后,Space 会自动构建和启动。首次构建需要 5-10 分钟。
## 🏠 本地开发部署
如果你想在本地开发环境中运行此项目:
### 使用 Docker Compose
```bash
# 克隆或下载项目
git clone <your-repo-url>
cd wordpress-docker-compose-master
# 构建并启动
docker-compose up --build
# 或者在后台运行
docker-compose up -d --build
```
### 使用 Docker 直接构建
```bash
# 构建镜像
docker build -t wordpress-sqlite .
# 运行容器
docker run -p 7860:7860 wordpress-sqlite
```
### 本地开发配置
- 数据持久化:使用 Docker volumes 保存数据
- 主题开发:可以挂载本地主题目录
- 插件开发:可以挂载本地插件目录
- 配置文件:可以修改 `config/wp_php.ini`
## 🔧 功能特性
### ✅ SQLite 数据库
- 无需外部数据库服务
- 数据存储在 `/var/www/html/wp-content/database/`
- 自动配置 SQLite Integration 插件
### ✅ GitHub 自动备份
- **启动时恢复**: Space 重启时自动从 GitHub 加载最近 30 天的备份
- **手动备份**: 可以手动运行备份脚本
- **备份内容**: SQLite 数据库 + 上传文件
### ✅ Hugging Face Space 优化
- 端口 7860 (HF Space 标准端口)
- 内存优化配置
- 健康检查支持
## 📖 使用说明
### 访问 WordPress
**Hugging Face Space:**
- **前台**: `https://your-space-name.hf.space/`
- **后台**: `https://your-space-name.hf.space/wp-admin/`
**本地开发:**
- **前台**: `http://localhost:7860/`
- **后台**: `http://localhost:7860/wp-admin/`
### 初次设置
1. 访问你的 Space URL
2. 按照 WordPress 安装向导完成设置
3. 创建管理员账户
4. 开始使用 WordPress
### 手动备份到 GitHub
如果配置了 GitHub 环境变量,可以手动创建备份:
```bash
# 在 Space 的终端中运行
/usr/local/bin/backup-wordpress.sh
```
## 🔍 故障排除
### 1. Space 无法启动
- 检查 Dockerfile 语法
- 确认端口设置为 7860
- 查看构建日志中的错误信息
### 2. WordPress 显示 403 错误
- 等待容器完全启动 (1-2 分钟)
- 检查健康检查状态
- 确认 SQLite 插件正确安装
### 3. GitHub 备份失败
- 验证 `GITHUB_TOKEN` 和 `GITHUB_REPO` 环境变量
- 确认 GitHub Token 有正确权限
- 检查仓库中是否存在 `backups` 文件夹
### 4. 数据丢失
- Space 重启时会自动尝试从 GitHub 恢复备份
- 手动恢复:将备份文件解压到相应目录
## 📁 项目结构
```
.
├── Dockerfile # Docker 构建文件 (HF Space)
├── app.py # HF Space 入口文件
├── requirements.txt # Python 依赖 (HF Space)
├── spaces.yml # HF Space 配置
├── README.md # 项目说明
├── DEPLOYMENT_GUIDE.md # 部署指南
├── docker-compose.yml # Docker Compose (SQLite)
├── docker-compose.local.yml # 本地开发配置
├── docker-compose.mysql.yml # MySQL 版本 (备份)
├── config/
│ ├── wp_php.ini # PHP 配置
│ └── pma_php.ini # phpMyAdmin 配置 (MySQL版本)
├── .dockerignore # Docker 忽略文件
└── env.example # 环境变量示例 (MySQL版本)
```
## 🔒 安全注意事项
1. **GitHub Token 安全**:
- 使用最小权限原则
- 定期轮换 Token
- 不要在代码中硬编码 Token
2. **WordPress 安全**:
- 使用强密码
- 定期更新 WordPress 和插件
- 限制管理员访问
3. **备份安全**:
- 备份仓库设为私有
- 定期检查备份完整性
## 📝 更新日志
- **v1.0.0**: 初始版本,支持 SQLite 和 GitHub 备份
## 🤝 贡献
欢迎提交 Issue 和 Pull Request!
## 📄 许可证
本项目采用 MIT 许可证。详见 [LICENSE](LICENSE) 文件。
---
**注意**: 这是一个为 Hugging Face Spaces 特别优化的 WordPress 部署方案。如果你需要在其他平台部署,可能需要调整配置。
|