mirror of
https://github.com/yanguo888/fakabot.git
synced 2026-06-20 12:30:40 +00:00
Add Docker one-click deployment guide
This commit is contained in:
@@ -37,9 +37,119 @@
|
||||
|
||||
---
|
||||
|
||||
## 🚀 完整部署教程
|
||||
## 🚀 快速部署
|
||||
|
||||
### 📋 环境要求
|
||||
### 🐳 方式一:Docker 一键部署(推荐)⭐
|
||||
|
||||
**最简单的部署方式,5分钟搞定!**
|
||||
|
||||
#### 前提条件
|
||||
|
||||
- 已安装 Docker 和 Docker Compose
|
||||
- 已购买授权码
|
||||
|
||||
#### 一键部署命令
|
||||
|
||||
```bash
|
||||
# 1. 克隆项目
|
||||
git clone https://github.com/GUGEGEBAIDU/fakabot.git
|
||||
cd fakabot
|
||||
|
||||
# 2. 复制配置文件
|
||||
cp config.json.example config.json
|
||||
|
||||
# 3. 编辑配置(填写 Bot Token、管理员 ID 等)
|
||||
vim config.json
|
||||
|
||||
# 4. 保存授权码
|
||||
echo "你的授权码" > license.key
|
||||
|
||||
# 5. 一键启动
|
||||
docker-compose up -d
|
||||
|
||||
# 6. 查看日志
|
||||
docker-compose logs -f
|
||||
```
|
||||
|
||||
#### Docker Compose 配置
|
||||
|
||||
项目已包含 `docker-compose.yml`:
|
||||
|
||||
```yaml
|
||||
version: '3.8'
|
||||
|
||||
services:
|
||||
fakabot:
|
||||
build: .
|
||||
container_name: fakabot
|
||||
restart: unless-stopped
|
||||
volumes:
|
||||
- ./config.json:/app/config.json
|
||||
- ./license.key:/app/license.key
|
||||
- ./data:/app/data
|
||||
ports:
|
||||
- "58001:58001"
|
||||
environment:
|
||||
- TZ=Asia/Shanghai
|
||||
networks:
|
||||
- fakabot-network
|
||||
|
||||
redis:
|
||||
image: redis:7-alpine
|
||||
container_name: fakabot-redis
|
||||
restart: unless-stopped
|
||||
volumes:
|
||||
- redis-data:/data
|
||||
networks:
|
||||
- fakabot-network
|
||||
|
||||
volumes:
|
||||
redis-data:
|
||||
|
||||
networks:
|
||||
fakabot-network:
|
||||
driver: bridge
|
||||
```
|
||||
|
||||
#### 常用 Docker 命令
|
||||
|
||||
```bash
|
||||
# 启动服务
|
||||
docker-compose up -d
|
||||
|
||||
# 停止服务
|
||||
docker-compose stop
|
||||
|
||||
# 重启服务
|
||||
docker-compose restart
|
||||
|
||||
# 查看日志
|
||||
docker-compose logs -f
|
||||
|
||||
# 查看状态
|
||||
docker-compose ps
|
||||
|
||||
# 停止并删除容器
|
||||
docker-compose down
|
||||
|
||||
# 更新代码后重新构建
|
||||
git pull
|
||||
docker-compose up -d --build
|
||||
```
|
||||
|
||||
#### 优势
|
||||
|
||||
- ✅ **一键部署** - 无需手动安装依赖
|
||||
- ✅ **环境隔离** - 不影响系统环境
|
||||
- ✅ **自动重启** - 崩溃自动恢复
|
||||
- ✅ **易于更新** - 一条命令更新
|
||||
- ✅ **包含 Redis** - 自动配置缓存
|
||||
|
||||
---
|
||||
|
||||
### 📦 方式二:传统部署
|
||||
|
||||
#### 📋 环境要求
|
||||
|
||||
- **操作系统**: Linux (Ubuntu 20.04+) / macOS
|
||||
- **Python**: 3.11+
|
||||
@@ -301,6 +411,217 @@ journalctl -u fakabot -f
|
||||
|
||||
---
|
||||
|
||||
## 🐳 Docker 部署详解
|
||||
|
||||
### 安装 Docker
|
||||
|
||||
#### Ubuntu/Debian
|
||||
|
||||
```bash
|
||||
# 更新包索引
|
||||
sudo apt update
|
||||
|
||||
# 安装依赖
|
||||
sudo apt install apt-transport-https ca-certificates curl software-properties-common -y
|
||||
|
||||
# 添加 Docker 官方 GPG 密钥
|
||||
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg
|
||||
|
||||
# 添加 Docker 仓库
|
||||
echo "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
|
||||
|
||||
# 安装 Docker
|
||||
sudo apt update
|
||||
sudo apt install docker-ce docker-ce-cli containerd.io docker-compose-plugin -y
|
||||
|
||||
# 启动 Docker
|
||||
sudo systemctl start docker
|
||||
sudo systemctl enable docker
|
||||
|
||||
# 验证安装
|
||||
docker --version
|
||||
docker compose version
|
||||
```
|
||||
|
||||
#### CentOS/RHEL
|
||||
|
||||
```bash
|
||||
# 安装依赖
|
||||
sudo yum install -y yum-utils
|
||||
|
||||
# 添加 Docker 仓库
|
||||
sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
|
||||
|
||||
# 安装 Docker
|
||||
sudo yum install docker-ce docker-ce-cli containerd.io docker-compose-plugin -y
|
||||
|
||||
# 启动 Docker
|
||||
sudo systemctl start docker
|
||||
sudo systemctl enable docker
|
||||
```
|
||||
|
||||
### Docker 部署步骤
|
||||
|
||||
#### 1. 克隆项目
|
||||
|
||||
```bash
|
||||
git clone https://github.com/GUGEGEBAIDU/fakabot.git
|
||||
cd fakabot
|
||||
```
|
||||
|
||||
#### 2. 配置文件
|
||||
|
||||
```bash
|
||||
# 复制配置文件
|
||||
cp config.json.example config.json
|
||||
|
||||
# 编辑配置
|
||||
vim config.json
|
||||
```
|
||||
|
||||
**最小配置示例**:
|
||||
|
||||
```json
|
||||
{
|
||||
"BOT_TOKEN": "你的Bot Token",
|
||||
"ADMIN_ID": 你的Telegram ID,
|
||||
"DOMAIN": "https://你的域名.com",
|
||||
"REDIS": {
|
||||
"enabled": true,
|
||||
"host": "redis",
|
||||
"port": 6379
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
#### 3. 保存授权码
|
||||
|
||||
```bash
|
||||
echo "你的授权码" > license.key
|
||||
```
|
||||
|
||||
#### 4. 启动服务
|
||||
|
||||
```bash
|
||||
# 后台启动
|
||||
docker-compose up -d
|
||||
|
||||
# 查看日志
|
||||
docker-compose logs -f fakabot
|
||||
```
|
||||
|
||||
#### 5. 验证运行
|
||||
|
||||
```bash
|
||||
# 查看容器状态
|
||||
docker-compose ps
|
||||
|
||||
# 应该看到两个容器运行中:
|
||||
# fakabot Up
|
||||
# fakabot-redis Up
|
||||
```
|
||||
|
||||
### Docker 常见问题
|
||||
|
||||
**Q: 如何更新机器人?**
|
||||
|
||||
```bash
|
||||
# 拉取最新代码
|
||||
git pull
|
||||
|
||||
# 重新构建并启动
|
||||
docker-compose up -d --build
|
||||
```
|
||||
|
||||
**Q: 如何查看日志?**
|
||||
|
||||
```bash
|
||||
# 实时查看日志
|
||||
docker-compose logs -f
|
||||
|
||||
# 查看最近100行
|
||||
docker-compose logs --tail=100
|
||||
|
||||
# 只查看机器人日志
|
||||
docker-compose logs -f fakabot
|
||||
```
|
||||
|
||||
**Q: 如何备份数据?**
|
||||
|
||||
```bash
|
||||
# 备份数据目录
|
||||
tar -czf fakabot-backup-$(date +%Y%m%d).tar.gz data/ config.json license.key
|
||||
|
||||
# 恢复数据
|
||||
tar -xzf fakabot-backup-20250118.tar.gz
|
||||
```
|
||||
|
||||
**Q: 如何重启服务?**
|
||||
|
||||
```bash
|
||||
# 重启所有服务
|
||||
docker-compose restart
|
||||
|
||||
# 只重启机器人
|
||||
docker-compose restart fakabot
|
||||
```
|
||||
|
||||
**Q: 如何进入容器调试?**
|
||||
|
||||
```bash
|
||||
# 进入机器人容器
|
||||
docker-compose exec fakabot sh
|
||||
|
||||
# 查看文件
|
||||
ls -la
|
||||
|
||||
# 退出容器
|
||||
exit
|
||||
```
|
||||
|
||||
**Q: 端口被占用怎么办?**
|
||||
|
||||
```bash
|
||||
# 修改 docker-compose.yml 中的端口
|
||||
ports:
|
||||
- "58002:58001" # 改成其他端口
|
||||
```
|
||||
|
||||
### Docker 性能优化
|
||||
|
||||
#### 限制资源使用
|
||||
|
||||
编辑 `docker-compose.yml`:
|
||||
|
||||
```yaml
|
||||
services:
|
||||
fakabot:
|
||||
# ... 其他配置
|
||||
deploy:
|
||||
resources:
|
||||
limits:
|
||||
cpus: '1.0'
|
||||
memory: 1G
|
||||
reservations:
|
||||
cpus: '0.5'
|
||||
memory: 512M
|
||||
```
|
||||
|
||||
#### 使用 Docker 网络
|
||||
|
||||
```bash
|
||||
# 创建自定义网络
|
||||
docker network create fakabot-net
|
||||
|
||||
# 在 docker-compose.yml 中使用
|
||||
networks:
|
||||
default:
|
||||
external:
|
||||
name: fakabot-net
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## ✨ 核心功能
|
||||
|
||||
### 💳 支付系统
|
||||
|
||||
Reference in New Issue
Block a user