overleaf 中:
kubectl create namespace overleaf
HISTORY=$(openssl rand -hex 32)
kubectl -n overleaf create secret generic overleaf-secrets \
--from-literal=OVERLEAF_INVITE_TOKEN_SECRET="$(openssl rand -base64 32)" \
--from-literal=OVERLEAF_SESSION_SECRET="$(openssl rand -hex 32)" \
--from-literal=WEB_API_PASSWORD="$(openssl rand -hex 32)" \
--from-literal=STAGING_PASSWORD="$HISTORY" \
--from-literal=V1_HISTORY_PASSWORD="$HISTORY" \
--from-literal=CRYPTO_RANDOM="$(openssl rand -hex 32)" \
--from-literal=OT_JWT_AUTH_KEY="$(openssl rand -hex 32)"
| 密钥 | 原因 |
|---|---|
OVERLEAF_INVITE_TOKEN_SECRET | 必需。如果缺少,pod 会停止并显示 “Missing required secrets”。更改它会使待处理的项目邀请失效。 |
OVERLEAF_SESSION_SECRET | 用于签名会话 cookie。如果缺少,每次重启 pod 都会使所有人退出登录。 |
WEB_API_PASSWORD、CRYPTO_RANDOM、OT_JWT_AUTH_KEY | 内部密钥。如果缺少,容器会在每次启动时生成它们;在有多个副本的情况下,所有副本必须共享这些密钥。 |
STAGING_PASSWORD 和 V1_HISTORY_PASSWORD | 内部历史记录密钥;二者必须使用相同的值。 |
请将该 Secret(
kubectl -n overleaf get secret overleaf-secrets -o yaml)与你的数据一起备份。在 MongoDB 中加密令牌的功能也需要在此 Secret 中设置各自的加密密码,例如 GitHub 同步 所需的 GITHUB_TOKEN_CIPHER_PASSWORD。
