> ## Documentation Index
> Fetch the complete documentation index at: https://ayakaleaf-pro.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

# Kubernetes

> Kubernetes dağıtımını yapılandırın - ayarların, gizli anahtarların ve dosyaların nereye konduğu ve her özellik için bir sayfa.

Kubernetes dağıtımı, Toolkit ile aynı ortam değişkenlerini okur. Bir Toolkit sayfası "bunu `config/variables.env` dosyasına ekleyin" dediğinde, değeri `overleaf-env` ConfigMap'ine koyun; değer bir parola, anahtar veya token ise `overleaf-secrets` Secret'ına koyun. Ardından yeniden başlatın:

```bash theme={null}
kubectl -n overleaf apply -f 30-config.yaml        # after editing the ConfigMap
kubectl -n overleaf patch secret overleaf-secrets --type merge \
  -p '{"stringData":{"GITHUB_TOKEN_CIPHER_PASSWORD":"'"$(openssl rand -hex 32)"'"}}'
kubectl -n overleaf rollout restart deployment/overleaf
```

`config/overleaf.rc` içindeki değerler ortam değişkenleri değil, Toolkit ayarlarıdır; bunların yerine neyin geçtiğini bu sayfanın sonundaki Soru\&Cevap bölümü açıklar.

### Özellikler

Toolkit yapılandırmasının her özelliğinin burada; hizmetlerini, ayarlarını, ağ yollarını, arka plan işlerini, birden fazla replikayla nelerin değiştiğini ve nasıl test edildiğini anlatan bir sayfası vardır:

| Özellik | Pod'daki hizmetler | ConfigMap ve Secret dışında gerekenler |
| - | - | - |
| [Kimlik Doğrulama](https://ayakaleaf-pro.mintlify.site/tr/on-premises/configuration/kubernetes/authentication): [OIDC](https://ayakaleaf-pro.mintlify.site/tr/on-premises/configuration/kubernetes/authentication/oidc-authentication.md), [SAML](https://ayakaleaf-pro.mintlify.site/tr/on-premises/configuration/kubernetes/authentication/saml-authentication.md), [LDAP](https://ayakaleaf-pro.mintlify.site/tr/on-premises/configuration/kubernetes/authentication/ldap-authentication.md), [Herkese Açık Erişim](https://ayakaleaf-pro.mintlify.site/tr/on-premises/configuration/kubernetes/authentication/public-access.md), [reCAPTCHA](https://ayakaleaf-pro.mintlify.site/tr/on-premises/configuration/kubernetes/authentication/recaptcha.md), [Parola kısıtlamaları](https://ayakaleaf-pro.mintlify.site/tr/on-premises/configuration/kubernetes/authentication/password-restrictions.md) | web | istemci gizli anahtarları, IdP sertifikası, LDAP CA'sı |
| [Sandbox Derlemeleri](https://ayakaleaf-pro.mintlify.site/tr/on-premises/configuration/kubernetes/sandboxed-compiles.md) | clsi | her düğümde Docker Engine ve TeX Live imajları |
| [Pandoc ile İçe ve Dışa Aktarma](https://ayakaleaf-pro.mintlify.site/tr/on-premises/configuration/kubernetes/pandoc-import-and-export.md) | clsi, web | her düğümde Docker'daki Pandoc imajı |
| [Git entegrasyonu](https://ayakaleaf-pro.mintlify.site/tr/on-premises/configuration/kubernetes/integrations/git-integration.md) | git-bridge (kendi pod'u), web, history-v1 | git-bridge StatefulSet'i ve iki Service |
| [GitHub](https://ayakaleaf-pro.mintlify.site/tr/on-premises/configuration/kubernetes/integrations/github-synchronisation.md), [GitLab](https://ayakaleaf-pro.mintlify.site/tr/on-premises/configuration/kubernetes/integrations/gitlab-synchronisation.md), [Gitea](https://ayakaleaf-pro.mintlify.site/tr/on-premises/configuration/kubernetes/integrations/gitea-synchronisation.md) Senkronizasyonu | web | Git entegrasyonu |
| [Dropbox Senkronizasyonu](https://ayakaleaf-pro.mintlify.site/tr/on-premises/configuration/kubernetes/integrations/dropbox-synchronisation.md) | web, third-party-datastore, document-updater | Git entegrasyonu, internetten erişilebilen webhook, veritabanı dizinleri |
| [Zotero](https://ayakaleaf-pro.mintlify.site/tr/on-premises/configuration/kubernetes/integrations/zotero-integration.md), [Mendeley](https://ayakaleaf-pro.mintlify.site/tr/on-premises/configuration/kubernetes/integrations/mendeley-integration.md) Entegrasyonu | web | Secret'taki şifreleme parolası |
| [MCP Sunucusu](https://ayakaleaf-pro.mintlify.site/tr/on-premises/configuration/kubernetes/integrations/mcp-server.md) | web | Git entegrasyonu |
| [Yapay Zekâ Entegrasyonu](https://ayakaleaf-pro.mintlify.site/tr/on-premises/configuration/kubernetes/integrations/ai-integration.md) | web, linked-url-proxy | – |
| [Overleaf İçe Aktarma API'si](https://ayakaleaf-pro.mintlify.site/tr/on-premises/configuration/kubernetes/integrations/overleaf-import-api.md) | web, linked-url-proxy | – |
| [Şablonlar](https://ayakaleaf-pro.mintlify.site/tr/on-premises/configuration/kubernetes/templates.md) | web, filestore | birden fazla replika için S3 |
| [Harici URL](https://ayakaleaf-pro.mintlify.site/tr/on-premises/configuration/kubernetes/external-url.md) | linked-url-proxy | `OVERLEAF_LINKED_URL_BLOCKED_NETWORKS` içinde herkese açık düğüm adresleri |
| [Günlük Kaydı](https://ayakaleaf-pro.mintlify.site/tr/on-premises/configuration/kubernetes/logging.md) | her hizmet | günlükleri saklamak için `/var/log/overleaf` konumunda bir birim |
| [TLS proxy](https://ayakaleaf-pro.mintlify.site/tr/on-premises/configuration/kubernetes/tls-proxy.md) | ingress'iniz veya yük dengeleyiciniz | TLS pod'ların önünde sonlanır |
| [Markalama](https://ayakaleaf-pro.mintlify.site/tr/on-premises/configuration/kubernetes/branding.md) | web | – |
| [Yerelleştirme](https://ayakaleaf-pro.mintlify.site/tr/on-premises/configuration/kubernetes/localization.md) | web | her dil için bir ana bilgisayar adı |
| [E-posta teslimi](https://ayakaleaf-pro.mintlify.site/tr/on-premises/configuration/kubernetes/email-delivery.md) | web | – |
| [Redis](https://ayakaleaf-pro.mintlify.site/tr/on-premises/configuration/kubernetes/redis.md) | canlı durumu olan her hizmet | – |
| [S3](https://ayakaleaf-pro.mintlify.site/tr/on-premises/configuration/kubernetes/s3.md) | history-v1, filestore | bir S3 hizmeti, birden fazla replika için gereklidir |
| [LaTeX kullanıcı yardımı ekleme](https://ayakaleaf-pro.mintlify.site/tr/on-premises/configuration/kubernetes/adding-latex-user-help.md) | web | pod'ların wiki'ye erişmesi gerekir |
| [Yatay ölçeklendirme](https://ayakaleaf-pro.mintlify.site/tr/on-premises/configuration/kubernetes/horizontal-scaling.md) | tümü | S3, yapışkan oturumlu (sticky session) bir yük dengeleyici |

### Sertifikalar ve diğer dosyalar

Bazı özellikler bir değer yerine bir dosya yolu alır: SAML sertifikaları (`OVERLEAF_SAML_IDP_CERT`, ...), LDAP CA'sı (`OVERLEAF_LDAP_TLS_OPTS_CA_PATH`) veya kendi barındırdığınız bir GitHub Enterprise, GitLab ya da Gitea için özel bir CA (`NODE_EXTRA_CA_CERTS`). Dosyaları bir Secret'a koyun ve onu Toolkit sayfalarının beklediği yere, `/var/lib/overleaf/certs` konumuna bağlayın:

```bash theme={null}
kubectl -n overleaf create secret generic overleaf-certs --from-file=idp_cert.pem --from-file=ca.pem
```

```yaml title="40-overleaf.yaml (additions)" theme={null}
          volumeMounts:
            # ...
            - name: certs
              mountPath: /var/lib/overleaf/certs
              readOnly: true
      volumes:
        # ...
        - name: certs
          secret:
            secretName: overleaf-certs
```

Ardından ConfigMap'te bunlara yollarıyla başvurun, örneğin `NODE_EXTRA_CA_CERTS: /var/lib/overleaf/certs/ca.pem`, ve yeniden başlatın.

> [!WARNING]
>
> **Şifreleme parolaları.** Kullandığınız özelliklerin tüm `*_CIPHER_PASSWORD` değerlerini Secret'ta ayarlayın. Aksi takdirde bazı özellikler ilk kullanımda veri biriminde bir anahtar dosyası oluşturur: tek replikada bu, birim kaybolana kadar çalışır; birden fazla replikada ise her replika farklı bir anahtarla şifreleme yapar.

### Soru\&Cevap

> [accordion] `config/overleaf.rc` içindeki hangi Toolkit ayarlarına ihtiyacım var?
>
> **Cevap:** Hiçbiri Ayakaleaf Pro tarafından okunmaz. Kubernetes'teki karşılıkları:
>
> | `config/overleaf.rc` | Kubernetes |
> | - | - |
> | `OVERLEAF_LISTEN_IP`, `OVERLEAF_PORT` | Service (NodePort) veya ingress'iniz |
> | `SIBLING_CONTAINERS_ENABLED` | ConfigMap'te `SANDBOXED_COMPILES*`, pod'da Docker soketi |
> | `GIT_BRIDGE_ENABLED` | [Git entegrasyonu](https://ayakaleaf-pro.mintlify.site/tr/on-premises/configuration/kubernetes/integrations/git-integration.md) |
> | `MONGO_ENABLED`, `REDIS_ENABLED`, `MONGO_URL`, `REDIS_HOST` | StatefulSet'ler veya yönetilen hizmetleriniz, `OVERLEAF_MONGO_URL` ve `OVERLEAF_REDIS_HOST` |
> | `REDIS_AOF_PERSISTENCE` | `20-redis.yaml` içinde `--appendonly yes` |
> | `NGINX_ENABLED`, `TLS_*` | ingress'iniz veya yük dengeleyiciniz |


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.