147 lines
3.4 KiB
Markdown
Raw Permalink 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.

# Docker Compose 部署说明
## 概述
这是一个基于Docker Compose的微服务部署方案包含以下服务
- Pulsar 消息队列集群
- IoTDB 时序数据库
- Redis 缓存服务
- MySQL 关系数据库
- Admin API 管理接口
- Admin Web 管理界面
## 快速开始
### 1. 配置环境变量
复制 `env.example``.env` 并修改配置:
```bash
cp env.example .env
# 编辑 .env 文件修改服务器IP地址等配置
```
### 2. 启动服务
```bash
# 给启动脚本添加执行权限
chmod +x start-pulsar.sh
# 启动所有服务
./start-pulsar.sh
```
### 3. 查看服务状态
```bash
docker-compose -f docker-compose.yml ps
```
## 配置说明
### 环境变量配置 (.env)
| 变量名 | 说明 | 默认值 |
|--------|------|--------|
| `SERVER_IP` | 服务器公网IP地址 | 47.110.53.196 |
| `PULSAR_BROKER_PORT` | Pulsar Broker端口 | 9093 |
| `PULSAR_ADMIN_PORT` | Pulsar Admin端口 | 9094 |
| `IOTDB_PORT` | IoTDB端口 | 30710 |
| `REDIS_PORT` | Redis端口 | 30712 |
| `MYSQL_PORT` | MySQL端口 | 13306 |
| `ADMIN_API_PORT` | Admin API端口 | 28080 |
| `ADMIN_WEB_PORT` | Admin Web端口 | 30711 |
| `PULSAR_ADMIN_USER` | Pulsar管理员用户名 | admin |
| `PULSAR_ADMIN_PASSWORD` | Pulsar管理员密码 | 0fd7afb8b0d04e6abc4fdfdac2190a79 |
| `IOTDB_ROOT_PASSWORD` | IoTDB root用户密码 | Lixiao@1980 |
| `MYSQL_ROOT_PASSWORD` | MySQL root用户密码 | JiShe!aqG#5kGgh&0 |
### 端口映射
| 服务 | 容器端口 | 宿主机端口 | 说明 |
|------|----------|------------|------|
| Zookeeper | 2181 | 2181 | Pulsar集群协调服务 |
| Pulsar Broker | 9093 | 9093 | Pulsar消息服务 |
| Pulsar Admin | 9094 | 9094 | Pulsar管理接口 |
| IoTDB | 6667 | 30710 | 时序数据库 |
| Redis | 6379 | 30712 | 缓存服务 |
| MySQL | 3306 | 13306 | 关系数据库 |
| Admin API | 10500 | 28080 | 管理接口 |
| Admin Web | 8080 | 30711 | 管理界面 |
## 部署到新服务器
### 1. 修改配置文件
编辑 `.env` 文件,修改以下关键配置:
```bash
# 修改为你的服务器IP地址
SERVER_IP=你的服务器IP地址
# 根据需要修改端口(避免端口冲突)
PULSAR_BROKER_PORT=9093
PULSAR_ADMIN_PORT=9094
# ... 其他端口配置
```
### 2. 启动服务
```bash
./start-pulsar.sh
```
### 3. 验证部署
脚本会自动显示连接信息,包括:
- 各服务的访问地址
- 用户名和密码
- 测试连接命令
## 常用命令
```bash
# 查看服务状态
docker-compose -f docker-compose.yml ps
# 查看服务日志
docker-compose -f docker-compose.yml logs -f [服务名]
# 停止所有服务
docker-compose -f docker-compose.yml down
# 重启特定服务
docker-compose -f docker-compose.yml restart [服务名]
# 查看服务资源使用情况
docker stats
```
## 故障排除
### 1. 端口冲突
如果遇到端口冲突,修改 `config.env` 中的端口配置,然后重启服务。
### 2. 权限问题
确保脚本有执行权限:
```bash
chmod +x start-pulsar.sh
```
### 3. 磁盘空间
确保有足够的磁盘空间用于数据存储:
```bash
df -h
```
### 4. 服务启动顺序
服务启动顺序由 `depends_on` 配置控制,如果某个服务启动失败,检查依赖服务是否正常。
## 安全建议
1. 修改默认密码
2. 限制网络访问
3. 定期更新镜像
4. 监控服务状态
5. 备份重要数据
## 支持
如有问题,请检查:
1. Docker和Docker Compose版本
2. 系统资源是否充足
3. 网络配置是否正确
4. 日志信息中的错误提示