1
0
1Panel-Appstore/apps/kuno/README.md

214 lines
5.0 KiB
Markdown
Raw Normal View History

2025-08-06 05:49:24 +08:00
# Kuno
Kuno 是一个轻量级多语言内容管理系统CMS采用 Go 后端和 Next.js 前端技术栈,专为创建丰富的内容生态系统而设计。
## 主要特性
- **多语言支持**: 支持 70+ 种语言
- **现代技术栈**: Go 后端 + Next.js 前端
- **响应式设计**: 支持各种屏幕尺寸
- **Markdown 编辑器**: 方便的内容编辑体验
- **深色/浅色模式**: 用户体验友好
- **管理面板**: 完整的后台管理功能
- **分类管理**: 灵活的内容分类系统
- **Docker 部署**: 一键部署,易于维护
## 部署说明
### 默认登录信息
- 用户名: `admin`
- 密码: `xuemian168`
**重要提示**: 首次登录后请立即修改默认密码!
## 维护模式和密码重置
### 恢复模式
如果您忘记了管理员密码,可以通过以下步骤重置:
1. 在 1Panel 应用管理界面中,编辑 Kuno 应用配置
2. 将 "恢复模式" 设置为 "启用"
3. 重启应用容器
4. 使用默认凭据登录:
- 用户名: `admin`
- 密码: `xuemian168`
5. 登录后立即修改密码
6. 将 "恢复模式" 重新设置为 "禁用"
7. 再次重启应用容器
**安全提示**: 恢复模式会临时启用默认密码访问,请在重置密码后立即禁用此模式。
### 数据持久化
应用会将所有数据存储在 `/app/data` 目录中,包括:
- SQLite 数据库文件
- 用户上传的文件
- 配置文件
### 环境变量说明
- `NEXT_PUBLIC_API_URL`: API 端点地址
- `DB_PATH`: SQLite 数据库路径 (默认: `/app/data/kuno.db`)
- `GIN_MODE`: Go 后端运行模式 (生产环境建议使用 `release`)
- `NODE_ENV`: Node.js 环境 (生产环境建议使用 `production`)
- `JWT_SECRET`: JWT 认证密钥 (请使用随机字符串)
- `RECOVERY_MODE`: 恢复模式 (默认: `false`,启用时允许使用默认密码登录)
## 使用指南
1. 部署完成后,访问应用地址
2. 使用默认账号登录
3. 立即修改默认密码
4. 开始创建和管理内容
## 系统要求
- CPU: 1 核心
- 内存: 1GB RAM
- 存储: 10GB 可用空间
- 架构: x86_64/amd64
## 故障排除
### 安装一直处于进行中状态
如果应用在1Panel中显示"安装中"且长时间未完成,请按以下步骤排查:
**立即尝试的解决方案**
1. **刷新页面** - 有时仅仅是界面显示问题
2. **检查网络** - 确保服务器可以访问 Docker Hub
3. **查看系统资源** - 确保有足够的磁盘空间和内存
**如果问题持续存在**
#### 1. 检查Docker容器状态
```bash
# 查看所有容器状态
docker ps -a
# 查看Kuno相关容器
docker ps -a | grep kuno
```
#### 2. 检查容器日志
```bash
# 查看容器启动日志
docker logs <容器名称或ID>
# 实时查看日志
docker logs -f <容器名称或ID>
```
#### 3. 检查镜像拉取状态
```bash
# 查看镜像拉取进度
docker pull ictrun/kuno:latest
# 查看本地镜像
docker images | grep kuno
```
#### 4. 检查端口占用
```bash
# 检查端口是否被占用
netstat -tlnp | grep <端口号>
# 或使用
ss -tlnp | grep <端口号>
```
#### 5. 检查磁盘空间
```bash
# 检查磁盘使用情况
df -h
# 检查Docker空间使用
docker system df
```
#### 6. 常见解决方案
1. **重新安装应用**
- 删除应用
- 清理残留容器:`docker container prune`
- 重新从应用商店安装
2. **手动拉取镜像**
```bash
docker pull ictrun/kuno:latest
```
3. **检查网络连接**
- 确保服务器可以访问Docker Hub
- 检查防火墙设置
4. **查看1Panel系统日志**
```bash
journalctl -u 1panel -f
```
5. **重启Docker服务**
```bash
systemctl restart docker
```
6. **手动验证镜像**
```bash
# 测试镜像是否可用
docker run --rm ictrun/kuno:latest --version
```
7. **使用1Panel命令行工具**
```bash
# 查看1Panel应用状态
1pctl app list
1pctl app logs kuno
```
### 应用无法访问
如果应用安装成功但无法访问:
1. **检查容器是否正常运行**
```bash
docker ps | grep kuno
docker logs <容器名称>
```
2. **验证端口配置是否正确**
```bash
netstat -tlnp | grep <端口号>
```
3. **检查防火墙是否开放对应端口**
```bash
# CentOS/RHEL
firewall-cmd --list-ports
firewall-cmd --add-port=<端口号>/tcp --permanent
# Ubuntu/Debian
ufw status
ufw allow <端口号>
```
4. **确认容器健康状态**
```bash
docker inspect <容器名称> | grep Health -A 10
```
### 常见错误代码对照
- **错误代码 500**: 通常是数据库初始化问题,检查数据目录权限
- **错误代码 502**: 容器未正常启动,查看容器日志
- **连接超时**: 网络或防火墙问题,检查端口开放状态
- **镜像拉取失败**: 网络问题或镜像不存在,尝试手动拉取镜像
## 备份建议
定期备份 `data` 目录以确保数据安全。
## 更多信息
- GitHub: https://github.com/xuemian168/kuno
- 文档: https://github.com/xuemian168/kuno/blob/main/README.md