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)"
| Sekret | Dlaczego |
|---|---|
OVERLEAF_INVITE_TOKEN_SECRET | Wymagany. Bez niego pod zatrzymuje się z komunikatem „Missing required secrets”. Jego zmiana unieważnia oczekujące zaproszenia do projektów. |
OVERLEAF_SESSION_SECRET | Podpisuje ciasteczka sesji. Bez niego każde ponowne uruchomienie poda wylogowuje wszystkich. |
WEB_API_PASSWORD, CRYPTO_RANDOM, OT_JWT_AUTH_KEY | Sekrety wewnętrzne. Kontener generuje je przy każdym uruchomieniu, jeśli ich brakuje; przy więcej niż jednej replice wszystkie repliki muszą je współdzielić. |
STAGING_PASSWORD i V1_HISTORY_PASSWORD | Wewnętrzny sekret historii; oba muszą mieć tę samą wartość. |
Twórz kopię zapasową Secret (
kubectl -n overleaf get secret overleaf-secrets -o yaml) razem ze swoimi danymi. Funkcje, które szyfrują tokeny w MongoDB, również potrzebują w tym Secret własnych haseł szyfrujących, na przykład GITHUB_TOKEN_CIPHER_PASSWORD dla synchronizacji z GitHub.
