
monkeytype/monkeytype-frontenddocker 和 docker-compose-plugin。请按照 Docker 文档 进行安装。monkeytype 并进入该目录。.env 文件,可复制 example.env 中的内容。docker compose up -d。默认禁用用户注册/登录功能。如需允许用户注册,需设置 Firebase 项目。修改配置前,使用 docker compose down 停止运行中的容器。
创建 Firebase 账户。
创建 新 Firebase 项目:
启用认证:
Authentication > Sign-in methodEmail/Password 并保存生成服务账户:
⚙ 图标,选择 Project settings 打开项目设置Service accounts 选项卡Generate new private key,下载 .json 文件serviceAccountKey.jsondocker-compose.yml 文件,取消 monkeytype-backend 容器的第一个卷注释:
yaml# 取消注释以启用账户系统,请查看SELF_HOSTING.md文件 - type: bind source: ./serviceAccountKey.json target: /app/backend/src/credentials/serviceAccountKey.json read_only: true
更新 .env 文件:
⚙ 图标,选择 Project settings 打开项目设置</>:
const firebaseConfig = { apiKey: "AAAAAAAA", authDomain: "monkeytype-00000.firebaseapp.com", projectId: "monkeytype-00000", storageBucket: "monkeytype-00000.appspot.com", messagingSenderId: "90000000000", appId: "1:90000000000:web:000000000000" };
.env 文件:
FIREBASE_APIKEY=AAAAAAAA FIREBASE_AUTHDOMAIN=monkeytype-00000.firebaseapp.com FIREBASE_PROJECTID=monkeytype-00000 FIREBASE_STORAGEBUCKET=monkeytype-00000.appspot.com FIREBASE_MESSAGINGSENDERID=90000000000 FIREBASE_APPID=1:90000000000:web:000000000000
backend-configuration.json 文件,添加或修改:
json{ "users": { "signUp": true, "profiles": { "enabled": true } } }
.env 文件:
RECAPTCHA_SITE_KEY="你的站点密钥" RECAPTCHA_SECRET="你的密钥"
如私有部署,可使用默认值:
RECAPTCHA_SITE_KEY=6LeIxAcTAAAAAJcZVRqyHh71UMIEGNQ_MXjiZKhI RECAPTCHA_SECRET=6LeIxAcTAAAAAGG-vFI1TnRWxMZNFuojJ4WifJWe
如需启用密码重置和***验证邮件,更新 .env 文件中的以下配置:
# 邮件服务器配置 # 如需发送邮件(如密码重置),取消下方注释 EMAIL_HOST=mail.myserver # 你的邮件服务器域名 EMAIL_USER=mailuser # 用于认证的用户名 EMAIL_PASS=mailpass # 用户密码 EMAIL_PORT=465 # 端口,通常为 465 或 578 EMAIL_FROM="支持 <noreply@myserver>"
如需启用每日排行榜,更新 backend-configuration.json 文件,添加或修改:
json{ "dailyLeaderboards": { "enabled": true, "maxResults": 250, "leaderboardExpirationTimeInDays": 1, "validModeRules": [ { "language": "english", "mode": "time", "mode2": "15" }, { "language": "english", "mode": "time", "mode2": "60" } ] } }
time 或 wordstime,可选 15、30、60 或 120;若 mode 为 words,可选 10、25、50 或 100所有设置在 example.env 文件中有详细说明。
包含 Firebase 配置,仅在允许用户注册时需要。
后端配置文件。可查看 默认配置 了解所有可能的配置值。
[!NOTE] 配置仅在容器启动时应用。修改配置后需重启容器使更改生效。


manifest unknown 错误
TLS 证书验证失败
DNS 解析超时
410 错误:版本过低
402 错误:流量耗尽
身份认证失败错误
429 限流错误
凭证保存错误
来自真实用户的反馈,见证轩辕镜像的优质服务