Files
MAAsDocker/README.md
T

45 lines
2.5 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.
# MAAsDocker(个人使用)
流程:crontab → 更新 MAAsDocker → Compose 启动一次性容器 → 容器更新 MAAsConfig → 更新 MAA → 重启 ReDroid → 执行任务 → 停止 ReDroid → 容器退出。
## 构建
开发板目录 `/home/lichx/maas/MAAsDocker`。修改 `.env` 的代理、Git 地址和 ADB 地址后:
```sh
mkdir -p ../state/{home,tmp,logs}
docker compose build
docker compose up -d
docker compose logs -f app
```
Dockerfile 内仍然 `git clone` MAAsConfig,启动时两层仓库都 `git pull --ff-only`。配置和脚本改完需提交、推送到对应仓库;不再靠 rsync 发布配置。pull 遇到分叉或冲突直接报错,不使用 reset --hard 覆盖本地修改。
构建下载和 `maa update`、`maa self update` 使用 `.env` 中的代理;拉取自己的 Git 仓库、ADB 和游戏任务不走代理。更新 MAA 失败会打印错误并继续使用已安装版本。MaaEnd 下载 latest 包,随镜像重新构建更新。
只面向当前 ARM64 开发板:用户 UID/GID 1001,Docker socket 组 996。容器通过 Docker socket 启停现有 `redroid`,不重建 ReDroid,也不挂载其数据。应用数据、ADB 密钥、缓存和日志都放在本项目 `state/`。
## 定时运行
由 lichx 手动加入 crontab(开发板北京时间):
```cron
0 8,16,22 * * * /home/lichx/maas/MAAsDocker/start-docker.sh >> /home/lichx/maas/state/logs/cron.log 2>&1
```
明日方舟沿用 startup → recruit → infrast → fight → mall → award。保留原来的命令重试、重开游戏重试,以及失败后继续尝试其他任务的行为;最后用退出码记录是否发生失败。
基本进度通过 `MAA_LOG=info` 显示,`tee` 同时保存到 `state/logs/maa-日期-时间.log`;MAA 内核调试日志另存 `state/arknights/debug/asst.log`。
## MaaEnd
当前 `.env` 的 `GAMES=arknights`,尚未自动运行 MaaEnd。需要配置时:
```sh
docker compose run --rm app maaend-config
```
保存后,把 `state/maaend-版本/maafw/config/maa_pi_config.json` 的内容更新到 MAAsConfig 仓库的 `MaaEndConfig/maa_pi_config.json`,提交并推送。随后把 `.env` 改为 `GAMES="arknights maaend"`,两种游戏会依次运行,各自结束时停止 ReDroid。
MaaEnd 只保留必要适配:补齐 CLI 的资源路径,在 state 中生成 ADB 专用 interface,省略 CLI 不支持的 hotkey 设置导入;保留上游 interface 和默认游戏资源。用户数据随版本保存在 state 中,不自动删除旧版本数据。