# SmsReceiver-go 生产环境 Docker Compose 配置 # 使用预编译好的 Docker 镜像,无需本地编译 # # 快速启动: # 1. 复制配置文件:cp config.example.yaml config.yaml # 2. 根据需要修改 config.yaml(数据库路径、API Token 等) # 3. 启动服务:docker compose -f docker-compose.production.yml up -d # # 访问地址:http://localhost:28001 # 默认账号:admin / admin123 services: sms-receiver: # 使用 Docker Hub 上的预编译镜像 image: ouaone/sms-receiver-go:latest # 或指定版本:image: ouaone/sms-receiver-go:v2.0.2 container_name: sms-receiver-go # 自动重启策略 restart: unless-stopped # 端口映射 ports: - "28001:28001" # 数据卷挂载 volumes: # 数据库目录(容器内 /app/data) - ./data:/app/data # 日志目录(容器内 /app/logs) - ./logs:/app/logs # 配置文件(只读挂载) - ./config.yaml:/app/config.yaml:ro # 环境变量 environment: - TZ=Asia/Shanghai # 健康检查 healthcheck: test: ["CMD", "wget", "--no-verbose", "--tries=1", "--spider", "http://localhost:28001/health"] interval: 30s # 每 30 秒检查一次 timeout: 3s # 超时时间 3 秒 retries: 3 # 失败 3 次后标记为不健康 start_period: 5s # 容器启动后 5 秒开始检查 # 网络 networks: - sms-network # 资源限制(可选) deploy: resources: limits: cpus: '0.5' memory: 128M reservations: cpus: '0.1' memory: 32M networks: sms-network: driver: bridge # 使用说明: # # 1. 首次使用前,创建配置文件: # cp config.example.yaml config.yaml # # 2. 编辑 config.yaml 配置: # - data_path: /app/data (数据库名称,无需修改) # - admin_password: admin123 (修改为强密码,或使用 password_hash) # - api_tokens: 添加你的 TranspondSms APP 的 Token 配置 # # 3. 启动服务: # docker compose -f docker-compose.production.yml up -d # # 4. 查看日志: # docker compose -f docker-compose.production.yml logs -f # # 5. 停止服务: # docker compose -f docker-compose.production.yml down # # 6. 更新镜像: # docker compose -f docker-compose.production.yml pull # docker compose -f docker-compose.production.yml up -d # # 目录结构示例: # SmsReceiver-go/ # ├── docker-compose.production.yml (本文件) # ├── config.yaml (配置文件,需自行创建) # ├── config.example.yaml (配置示例) # ├── data/ (自动创建,存放数据库) # └── logs/ (自动创建,存放日志)