NAC_Blockchain/nac-deploy/README.md

158 lines
2.7 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.

# NAC部署工具
NAC公链节点的部署工具支持Docker、Kubernetes等多种部署方式。
## 功能特性
### 1. Docker部署 ✅
- ✅ 多阶段构建Dockerfile
- ✅ Docker Compose编排
- ✅ 镜像优化(< 100MB
- 健康检查
### 2. Kubernetes部署 ✅
- K8s Deployment配置
- Service配置
- PVC存储配置
- HPA自动扩缩容
- 滚动更新策略
### 3. 配置管理 ✅
- 环境变量管理
- ConfigMap配置
- Secret密钥管理
- 配置验证
### 4. 健康检查 ✅
- 存活探针Liveness Probe
- 就绪探针Readiness Probe
- 启动探针Startup Probe
- Prometheus监控指标
## 快速开始
### Docker部署
```bash
# 构建镜像
docker build -t nac-blockchain/node:latest -f nac-deploy/Dockerfile .
# 运行节点
docker run -d \
--name nac-node \
-p 8545:8545 \
-p 8546:8546 \
-p 30303:30303 \
-v nac-data:/data/nac \
nac-blockchain/node:latest
# 使用Docker Compose
cd nac-deploy
docker-compose up -d
```
### Kubernetes部署
```bash
# 创建命名空间
kubectl create namespace nac-blockchain
# 应用配置
kubectl apply -f nac-deploy/k8s/
# 查看状态
kubectl get pods -n nac-blockchain
kubectl get svc -n nac-blockchain
# 查看日志
kubectl logs -f -n nac-blockchain -l app=nac-node
```
## 配置说明
### 环境变量
| 变量名 | 说明 | 默认值 |
|--------|------|--------|
| NAC_NETWORK | 网络类型 | mainnet |
| NAC_LOG_LEVEL | 日志级别 | info |
| NAC_RPC_HOST | RPC监听地址 | 0.0.0.0 |
| NAC_RPC_PORT | RPC端口 | 8545 |
| NAC_WS_PORT | WebSocket端口 | 8546 |
| NAC_P2P_PORT | P2P端口 | 30303 |
| NAC_DATA_DIR | 数据目录 | /data/nac |
### 端口说明
| 端口 | 协议 | 说明 |
|------|------|------|
| 8545 | TCP | HTTP RPC |
| 8546 | TCP | WebSocket RPC |
| 30303 | TCP/UDP | P2P网络 |
| 9090 | TCP | Prometheus指标 |
## 监控
### Prometheus
访问 http://localhost:9090 查看Prometheus监控
### Grafana
访问 http://localhost:3000 查看Grafana仪表板默认用户名/密码admin/admin)。
## 健康检查
```bash
# Docker
docker exec nac-node nac-node health
# Kubernetes
kubectl exec -n nac-blockchain -it <pod-name> -- nac-node health
```
## 故障排查
### 查看日志
```bash
# Docker
docker logs -f nac-node
# Kubernetes
kubectl logs -f -n nac-blockchain -l app=nac-node
```
### 检查资源使用
```bash
# Docker
docker stats nac-node
# Kubernetes
kubectl top pods -n nac-blockchain
```
## 版本历史
### v1.0.0 (2026-02-18)
- 实现Docker部署
- 实现Kubernetes部署
- 实现配置管理
- 实现健康检查
- 添加监控支持
- 完整的文档
## 许可证
NAC公链项目专有
## 作者
NAC开发团队