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)"
| Secret | Pourquoi |
|---|---|
OVERLEAF_INVITE_TOKEN_SECRET | Obligatoire. Sans lui, le pod s’arrête avec « Missing required secrets ». Le modifier invalide les invitations aux projets en attente. |
OVERLEAF_SESSION_SECRET | Signe les cookies de session. Sans lui, chaque redémarrage du pod déconnecte tout le monde. |
WEB_API_PASSWORD, CRYPTO_RANDOM, OT_JWT_AUTH_KEY | Secrets internes. Le conteneur les génère à chaque démarrage lorsqu’ils sont absents ; avec plus d’une réplique, toutes les répliques doivent les partager. |
STAGING_PASSWORD et V1_HISTORY_PASSWORD | Secret interne de l’historique ; les deux doivent avoir la même valeur. |
Sauvegardez le Secret (
kubectl -n overleaf get secret overleaf-secrets -o yaml) avec vos données. Les fonctionnalités qui chiffrent des jetons dans MongoDB ont également besoin de leurs propres mots de passe de chiffrement dans ce Secret, par exemple GITHUB_TOKEN_CIPHER_PASSWORD pour la synchronisation GitHub.
