Sign inSign up

73tong/mt-login-sendmail

By 73tong

•Updated 5 months ago

Image
0

874

73tong/mt-login-sendmail repository overview

⁠M-Team 保活脚本 — 部署文档

⁠1. 环境要求

  • Docker 20.10+
  • Docker Compose v2(或 docker-compose v1.29+)
  • 至少 1GB 可用内存

⁠2. 快速部署

⁠2.1 创建项目目录
mkdir -p /opt/mteam-keepalive && cd /opt/mteam-keepalive
⁠2.2 创建环境变量文件
cat > .env << 'EOF'
# ==================== 账号信息(必填) ====================
USERNAME=your_mteam_username
PASSWORD=your_mteam_password

# ==================== 邮箱验证码(必填) ====================
[email protected]
EMAIL_SERVER=imap.example.com
EMAIL_AUTH_CODE=your_email_auth_code

# ==================== 代理设置(可选) ====================
SOCK5_PROXY=
USER_AGENT=Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36

# ==================== 企业微信通知(可选) ====================
WXWORK_WEBHOOK=

# ==================== 邮件提醒(可选) ====================
NOTIFY_EMAIL=
NOTIFY_EMAIL_PASSWORD=
NOTIFY_SMTP_SERVER=
NOTIFY_SMTP_PORT=587
NOTIFY_TO_EMAIL=

# ==================== Web 管理界面(推荐设置) ====================
WEB_USERNAME=admin
WEB_PASSWORD=your_web_password

# ==================== 调度参数 ====================
MIN_DAYS=5
MAX_DAYS=10
JOB_TIMEOUT_SECONDS=1800
RUN_ON_START=1

# ==================== 时区 ====================
TZ=Asia/Shanghai
EOF

⚠️ 请将 your_mteam_username、your_mteam_password、[email protected] 等占位符替换为你的真实信息。

⁠2.3 创建 docker-compose.yml
cat > docker-compose.yml << 'EOF'
version: "3.9"

services:
  keeper:
    image: 73tong/mt-login-sendmail:latest
    container_name: mteam-keepalive
    restart: unless-stopped

    ports:
      - "5500:8080"

    env_file:
      - .env

    environment:
      TZ: Asia/Shanghai

    volumes:
      - ./data:/app/data
      - /etc/localtime:/etc/localtime:ro
      - /usr/share/zoneinfo:/usr/share/zoneinfo:ro

    deploy:
      resources:
        limits:
          memory: 1g
        reservations:
          memory: 512m

    healthcheck:
      test: ["CMD", "curl", "-f", "http://localhost:8080/api/state"]
      interval: 1m
      timeout: 10s
      retries: 3
      start_period: 30s
EOF
⁠2.4 启动服务
docker compose up -d
⁠2.5 访问管理界面

浏览器打开 http://<服务器IP>:5500,使用 .env 中设置的 WEB_USERNAME / WEB_PASSWORD 登录。

⁠3. 常用命令

# 查看运行状态
docker compose ps

# 查看实时日志
docker compose logs -f

# 重启服务
docker compose restart

# 更新到最新镜像
docker compose pull && docker compose up -d

# 停止并删除容器
docker compose down

⁠4. 配置说明

⁠必填项
变量说明
USERNAMEM-Team 账号
PASSWORDM-Team 密码
EMAIL接收验证码的邮箱
EMAIL_SERVERIMAP 服务器地址
EMAIL_AUTH_CODE邮箱授权码
⁠可选项
变量说明默认值
SOCK5_PROXYSOCKS5 代理(host:port)空
USER_AGENT浏览器 UAChrome 144
WXWORK_WEBHOOK企业微信机器人 Webhook空
NOTIFY_EMAIL邮件提醒发件邮箱空
NOTIFY_EMAIL_PASSWORD发件邮箱授权码空
NOTIFY_SMTP_SERVERSMTP 服务器空
NOTIFY_SMTP_PORTSMTP 端口587
NOTIFY_TO_EMAIL收件邮箱(逗号分隔)空
WEB_USERNAMEWeb 界面用户名空(无需认证)
WEB_PASSWORDWeb 界面密码空(无需认证)
MIN_DAYS最小间隔天数5
MAX_DAYS最大间隔天数10
JOB_TIMEOUT_SECONDS任务超时秒数1800
RUN_ON_START启动即执行(1/0)1
TZ时区Asia/Shanghai

⁠5. 数据持久化

./data 目录保存了运行时状态,容器重建后不会丢失:

  • schedule_state.json — 调度状态(下次运行时间、上次执行结果)
  • config.json — Web 界面修改的配置

⁠6. 注意事项

  1. 时区:volumes 中挂载了 /etc/localtime 和 /usr/share/zoneinfo,确保容器内时间与宿主机一致。如果宿主机没有这些文件,可去掉挂载,仅依赖 TZ 环境变量(需镜像包含 tzdata)。
  2. 端口:默认映射宿主机 5500 → 容器 8080,按需修改 docker-compose.yml 中的 ports。
  3. 内存:镜像包含 Playwright(Chromium),建议至少预留 1GB 内存。
  4. Web 安全:公网部署时务必设置 WEB_USERNAME 和 WEB_PASSWORD。

Tag summary

Content type

Image

Digest

sha256:5c6a65373…

Size

923.9 MB

Last updated

5 months ago

docker pull 73tong/mt-login-sendmail