> ## 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.

# Thêm trợ giúp LaTeX cho người dùng

> Phục vụ các trang trợ giúp LaTeX từ một trang MediaWiki dưới /learn trên triển khai Kubernetes.

Các trang `/learn` được phục vụ bởi dịch vụ **web** (module `learn`) của mọi pod Ayakaleaf Pro, từ bộ nhớ đệm của wiki được đặt trong `WIKI_URL`. Chức năng của module và những wiki nào hoạt động được được mô tả trong [Thêm trợ giúp LaTeX cho người dùng](https://ayakaleaf-pro.mintlify.site/vi/on-premises/configuration/overleaf-toolkit/adding-latex-user-help.md).

| | |
| - | - |
| Dịch vụ | web (module `learn`), trong mọi pod Ayakaleaf Pro |
| Pod → bên ngoài | `WIKI_URL` (mặc định `https://learnwiki.overleaf.com`): mọi trang ở lần khởi động đầu tiên, sau đó tải lại một trang khi người dùng mở nó sau `WIKI_MAX_CACHE_AGE` |
| Trình duyệt → bên ngoài | hình ảnh của các trang, lấy trực tiếp từ `WIKI_URL` |
| Dữ liệu lưu trữ | bộ nhớ đệm trang trong `/var/lib/overleaf/data/learnPages` trên volume dữ liệu |
| Tác vụ định kỳ | không có: các trang được làm mới khi người dùng mở chúng |

### Cấu hình

```yaml title="30-config.yaml (additions)" theme={null}
  OVERLEAF_PROXY_LEARN: "true"
  # optional: your own MediaWiki
  # WIKI_URL: https://wiki.example.com
```

```bash theme={null}
kubectl apply -f 30-config.yaml
kubectl -n overleaf rollout restart deployment/overleaf     # or statefulset/overleaf
kubectl -n overleaf rollout status deployment/overleaf --timeout=30m
```

> [!WARNING]
>
> Ở lần khởi động đầu tiên khi module được bật, dịch vụ web tải xuống toàn bộ wiki trước khi chấp nhận yêu cầu, quá trình này mất vài phút. Pod vẫn ở trạng thái chưa sẵn sàng cho đến lúc đó, vì vậy hãy tính đến điều này trong `rollout status --timeout` và trong mọi startup probe hoặc liveness probe mà bạn thêm vào. Các lần khởi động sau sẽ dùng lại bộ nhớ đệm trên volume dữ liệu.

Ở lần khởi động đầu tiên, khi chưa có bộ nhớ đệm, các pod phải truy cập được `WIKI_URL`: nếu không, dịch vụ web sẽ thất bại khi khởi động và bị khởi động lại bên trong pod liên tục, nên pod không bao giờ trở nên sẵn sàng. Hãy tắt module, hoặc cho phép các pod kết nối ra ngoài tới wiki. Khi bộ nhớ đệm đã tồn tại, các pod sẽ khởi động và phục vụ các trang đã lưu đệm ngay cả khi không thể truy cập wiki.

### Nhiều replica

Mỗi replica giữ bộ nhớ đệm riêng trên ổ đĩa của node mình, vì vậy mỗi replica tải xuống wiki ở lần khởi động đầu tiên của nó; với `podManagementPolicy: OrderedReady`, chúng thực hiện lần lượt từng cái một. Người dùng có thể thấy một trang ở phiên bản hơi khác trên một replica khác cho đến khi trang đó được làm mới tại đó.

### Đã kiểm thử trên Kubernetes

Trên Kubernetes 1.37 với ba replica phía sau HAProxy, mỗi replica tải `https://learnwiki.overleaf.com` vào bộ nhớ đệm trên node của mình ở lần khởi động đầu tiên, các bài kiểm thử end-to-end của chúng tôi cho `/learn` đều đạt (12 trường hợp): liên kết Documentation trong thanh tiêu đề, thông điệp chào mừng và menu Help của trình soạn thảo, thanh bên mục lục, các trang, liên kết và chuyển hướng bên trong wiki, hình ảnh được tải từ wiki, lỗi 404 cho các trang không xác định, yêu cầu đăng nhập khi không có quyền truy cập công khai, và một trang cũ được phục vụ từ bộ nhớ đệm sau khi `WIKI_URL` được đổi sang một địa chỉ không thể truy cập. Khi khởi động với bộ nhớ đệm trống và `WIKI_URL` trỏ tới một địa chỉ từ chối kết nối, pod vẫn ở trạng thái chưa sẵn sàng mà không khởi động lại, trong khi dịch vụ web bên trong nó đã khởi động và thất bại 77 lần trong ba phút.


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