Chạy một phiên bản Ayakaleaf Pro cục bộ trên Windows bằng WSL 2, Docker Desktop và Toolkit.
Trong phần này, chúng ta sẽ chạy Ayakaleaf Pro cục bộ trên Windows bằng WSL 2, Ubuntu, Docker Desktop và Ayakaleaf Toolkit. Hướng dẫn sử dụng http://localhost:8080, lưu dữ liệu trong thư mục home của Ubuntu và bật sandboxed compiles.Ứng dụng, MongoDB, Redis và TeX Live chạy trong các container Linux do Docker Desktop quản lý. Hãy chạy các lệnh Toolkit trong Ubuntu; mở ứng dụng trong trình duyệt trên Windows. Bước 0 giải thích cách các thành phần Windows và Linux kết hợp với nhau và bắt đầu từ việc cài đặt WSL.Bạn có thể dùng Windows cho một phiên bản cục bộ hoặc giữ nó chạy liên tục bằng các thiết lập về tính khả dụng ở bước 6. Đối với các máy chủ dùng chung và máy chủ production, chúng tôi khuyến nghị hướng dẫn cho Linux, với HTTPS, sao lưu và kiểm soát truy cập. Chế độ ngủ của Windows, việc tắt Docker Desktop và việc tắt WSL sẽ làm gián đoạn phiên bản cục bộ này; xem Giữ cho phiên bản luôn khả dụng.
Một phiên bản Windows và bộ xử lý được hỗ trợ bởi Docker Desktop for Windows, với ảo hóa phần cứng được bật. Hướng dẫn này sử dụng Windows 11 trên x86-64.
Quyền bật WSL và cài đặt phần mềm. WSL phải là phiên bản 2.1.5 trở lên, với Ubuntu chạy ở chế độ WSL 2.
Đủ bộ nhớ cho Windows và các container. Đối với một phiên bản cục bộ nhỏ, 4 CPU và 8 GB khả dụng cho Docker là điểm khởi đầu được gợi ý, không phải mức tối thiểu đã được đo lường.
Dung lượng trống trên ổ đĩa Windows chứa dữ liệu WSL và Docker. Hãy dành ít nhất 40 GB cho một thiết lập TeX Live đầy đủ cộng với dữ liệu dự án; image basic ở bước 5 nhỏ hơn và phù hợp cho lần thử nghiệm triển khai ban đầu. Các phiên bản image bổ sung cần thêm dung lượng.
Quyền truy cập mạng tới GitHub, GitHub Container Registry (ghcr.io) và Docker Hub để clone Toolkit và tải xuống các image.
Các khối PowerShell được chạy trong Windows. Các khối Bash và các lệnh bin/ được chạy trong Ubuntu trừ khi có ghi chú khác. Không chạy các script của Toolkit trong PowerShell hoặc Git Bash của Windows.
{"docsConfig":{"theme":"mint","$schema":"https://mintlify.com/docs.json","name":"Ayakaleaf Pro","description":"Overleaf Community Edition enhanced with all Pro features: open source, free to use, self-hostable.","colors":{"primary":"#0E0E0E","light":"#D4A27F","dark":"#0E0E0E"},"logo":{"light":"https://mintcdn.com/ayakaleaf-pro/JetHeEeglWIIXNds/logo/light.png?fit=max\u0026auto=format\u0026n=JetHeEeglWIIXNds\u0026q=85\u0026s=7f1abd8dcc74dd3b7cdafac9e6e82092","dark":"https://mintcdn.com/ayakaleaf-pro/JetHeEeglWIIXNds/logo/dark.png?fit=max\u0026auto=format\u0026n=JetHeEeglWIIXNds\u0026q=85\u0026s=4e369d29a8c5a6cd8b4b7697ddb1f7e2","href":"/"},"favicon":"https://mintcdn.com/ayakaleaf-pro/x9kfDjtWlyyhG_mR/favicon.png?fit=max\u0026auto=format\u0026n=x9kfDjtWlyyhG_mR\u0026q=85\u0026s=832c6bfafce5eb69ebc83783083a4a85","background":{"color":{"light":"#FDFDF7","dark":"#09090B"}},"navbar":{"links":[{"href":"https://github.com/ayaka-notes/ayakaleaf-pro-playground","label":"Playground"},{"href":"https://github.com/orgs/ayaka-notes/packages/container/package/overleaf-pro","label":"Docker Image"},{"href":"https://github.com/ayaka-notes/texlive-full","label":"TeXLive Full"}],"primary":{"type":"button","label":"Open GitHub","href":"https://github.com/ayaka-notes/ayakaleaf-pro"}},"footer":{"socials":{"github":"https://github.com/ayaka-notes"}},"styling":{"latex":true},"contextual":{"options":["copy","view","chatgpt","claude","perplexity","mcp","cursor","vscode","assistant","download-pdf","download-spec"],"display":"header"},"metadata":{"timestamp":true},"navigation":{"languages":[{"language":"en","default":true,"href":""},{"language":"zh-CN","href":"zh-CN"},{"language":"zh-TW","href":"zh-TW"},{"language":"ja","href":"ja"},{"language":"de","href":"de"},{"language":"fr","href":"fr"},{"language":"es","href":"es"},{"language":"it","href":"it"},{"language":"ko","href":"ko"},{"language":"ru","href":"ru"},{"language":"nl","href":"nl"},{"language":"pt","href":"pt"},{"language":"tr","href":"tr"},{"language":"uk","href":"uk"},{"language":"pl","href":"pl"},{"language":"cs","href":"cs"},{"language":"sv","href":"sv"},{"language":"fi","href":"fi"},{"language":"ar","href":"ar"},{"language":"vi","href":"vi"},{"language":"no","href":"no"},{"language":"da","href":"da"},{"language":"id","href":"id"},{"language":"zh-Hans","href":"zh-Hans"},{"language":"zh-Hant","href":"zh-Hant"}]}},"deployment":{"deploymentMetadataValue":{"subdomain":"ayakaleaf-pro","hasAudioNarration":false,"actualSubdomain":"ayakaleaf-pro","customDomains":[],"gitSource":{"type":"github","owner":"ayaka-notes","repo":"docs","deployBranch":"main","contentDirectory":"","isPrivate":false,"mountPath":"","label":""},"feedback":{"thumbs":true},"entitlements":{"AI_CHAT":{"status":"ENABLED"},"WEB_MCP":{"status":"ENABLED"},"NARRATION":{"status":"ENABLED"}},"buildId":"6aeff95a3729d361787f6c2e","clientVersion":"0.0.4087","searchFilterCounts":[{"language":"en","tag":"On-Premises","count":138},{"language":"ar","tag":"الاستضافة المحلية","count":117},{"language":"cs","tag":"On-Premises","count":117},{"language":"da","tag":"On-premises","count":117},{"language":"de","tag":"On-Premises","count":117},{"language":"es","tag":"Local","count":117},{"language":"fi","tag":"Paikallinen asennus","count":117},{"language":"fr","tag":"Sur site","count":117},{"language":"id","tag":"On-Premises","count":117},{"language":"it","tag":"On-premise","count":117},{"language":"ja","tag":"オンプレミス","count":117},{"language":"ko","tag":"온프레미스","count":117},{"language":"nl","tag":"On-premises","count":117},{"language":"no","tag":"Lokal drift","count":117},{"language":"pl","tag":"On-Premises","count":117},{"language":"pt","tag":"On-Premises","count":117},{"language":"ru","tag":"Локальное развертывание","count":117},{"language":"sv","tag":"On-Premises","count":117},{"language":"tr","tag":"Şirket İçi Kurulum","count":117},{"language":"uk","tag":"Локальне розгортання","count":117},{"language":"vi","tag":"Tự triển khai (On-Premises)","count":117},{"language":"zh-CN","tag":"本地部署","count":117},{"language":"zh-Hans","tag":"本地部署","count":117},{"language":"zh-Hant","tag":"本地部署","count":117},{"language":"zh-TW","tag":"本地部署","count":117},{"language":"ar","tag":"الإعداد","count":60},{"language":"en","tag":"Configuration","count":60},{"language":"cs","tag":"Konfigurace","count":60},{"language":"da","tag":"Konfiguration","count":60},{"language":"de","tag":"Konfiguration","count":60},{"language":"es","tag":"Configuración","count":60},{"language":"fi","tag":"Määritys","count":60},{"language":"fr","tag":"Configuration","count":60},{"language":"id","tag":"Konfigurasi","count":60},{"language":"it","tag":"Configurazione","count":60},{"language":"ja","tag":"設定","count":60},{"language":"ko","tag":"구성","count":60},{"language":"nl","tag":"Configuratie","count":60},{"language":"no","tag":"Konfigurasjon","count":60},{"language":"pl","tag":"Konfiguracja","count":60},{"language":"pt","tag":"Configuração","count":60},{"language":"ru","tag":"Настройка","count":60},{"language":"sv","tag":"Konfiguration","count":60},{"language":"tr","tag":"Yapılandırma","count":60},{"language":"uk","tag":"Конфігурація","count":60},{"language":"vi","tag":"Cấu hình","count":60},{"language":"zh-CN","tag":"配置","count":60},{"language":"zh-Hans","tag":"配置","count":60},{"language":"zh-Hant","tag":"設定","count":60},{"language":"zh-TW","tag":"設定","count":60},{"language":"ar","tag":"التثبيت","count":35},{"language":"en","tag":"Installation","count":35},{"language":"cs","tag":"Instalace","count":35},{"language":"da","tag":"Installation","count":35},{"language":"de","tag":"Installation","count":35},{"language":"es","tag":"Instalación","count":35},{"language":"fi","tag":"Asennus","count":35},{"language":"fr","tag":"Installation","count":35},{"language":"id","tag":"Instalasi","count":35},{"language":"it","tag":"Installazione","count":35},{"language":"ja","tag":"インストール","count":35},{"language":"ko","tag":"설치","count":35},{"language":"nl","tag":"Installatie","count":35},{"language":"no","tag":"Installasjon","count":35},{"language":"pl","tag":"Instalacja","count":35},{"language":"pt","tag":"Instalação","count":35},{"language":"ru","tag":"Установка","count":35},{"language":"sv","tag":"Installation","count":35},{"language":"tr","tag":"Kurulum","count":35},{"language":"uk","tag":"Встановлення","count":35},{"language":"vi","tag":"Cài đặt","count":35},{"language":"zh-CN","tag":"安装","count":35},{"language":"zh-Hans","tag":"安装","count":35},{"language":"zh-Hant","tag":"安裝","count":35},{"language":"zh-TW","tag":"安裝","count":35},{"language":"ar","tag":"Docker Compose","count":31},{"language":"en","tag":"Docker Compose","count":31},{"language":"cs","tag":"Docker Compose","count":31},{"language":"da","tag":"Docker Compose","count":31},{"language":"de","tag":"Docker Compose","count":31},{"language":"es","tag":"Docker Compose","count":31},{"language":"fi","tag":"Docker Compose","count":31},{"language":"fr","tag":"Docker Compose","count":31},{"language":"id","tag":"Docker Compose","count":31},{"language":"it","tag":"Docker Compose","count":31},{"language":"ja","tag":"Docker Compose","count":31},{"language":"ko","tag":"Docker Compose","count":31},{"language":"nl","tag":"Docker Compose","count":31},{"language":"no","tag":"Docker Compose","count":31},{"language":"pl","tag":"Docker Compose","count":31},{"language":"pt","tag":"Docker Compose","count":31},{"language":"ru","tag":"Docker Compose","count":31},{"language":"sv","tag":"Docker Compose","count":31},{"language":"tr","tag":"Docker Compose","count":31},{"language":"uk","tag":"Docker Compose","count":31},{"language":"vi","tag":"Docker Compose","count":31},{"language":"zh-CN","tag":"Docker Compose","count":31},{"language":"zh-Hans","tag":"Docker Compose","count":31},{"language":"zh-Hant","tag":"Docker Compose","count":31},{"language":"zh-TW","tag":"Docker Compose","count":31},{"language":"ar","tag":"Kubernetes","count":29},{"language":"en","tag":"Kubernetes","count":29},{"language":"cs","tag":"Kubernetes","count":29},{"language":"da","tag":"Kubernetes","count":29},{"language":"de","tag":"Kubernetes","count":29},{"language":"es","tag":"Kubernetes","count":29},{"language":"fi","tag":"Kubernetes","count":29},{"language":"fr","tag":"Kubernetes","count":29},{"language":"id","tag":"Kubernetes","count":29},{"language":"it","tag":"Kubernetes","count":29},{"language":"ja","tag":"Kubernetes","count":29},{"language":"ko","tag":"Kubernetes","count":29},{"language":"nl","tag":"Kubernetes","count":29},{"language":"no","tag":"Kubernetes","count":29},{"language":"pl","tag":"Kubernetes","count":29},{"language":"pt","tag":"Kubernetes","count":29},{"language":"ru","tag":"Kubernetes","count":29},{"language":"sv","tag":"Kubernetes","count":29},{"language":"tr","tag":"Kubernetes","count":29},{"language":"uk","tag":"Kubernetes","count":29},{"language":"vi","tag":"Kubernetes","count":29},{"language":"zh-CN","tag":"Kubernetes","count":29},{"language":"zh-Hans","tag":"Kubernetes","count":29},{"language":"zh-Hant","tag":"Kubernetes","count":29},{"language":"zh-TW","tag":"Kubernetes","count":29},{"language":"ar","tag":"استخدام Docker Compose","count":23},{"language":"en","tag":"Using Docker Compose","count":23},{"language":"cs","tag":"Použití Docker Compose","count":23},{"language":"da","tag":"Brug af Docker Compose","count":23},{"language":"de","tag":"Docker Compose verwenden","count":23},{"language":"es","tag":"Uso de Docker Compose","count":23},{"language":"fi","tag":"Docker Composen käyttö","count":23},{"language":"fr","tag":"Utiliser Docker Compose","count":23},{"language":"id","tag":"Menggunakan Docker Compose","count":23},{"language":"it","tag":"Utilizzo di Docker Compose","count":23},{"language":"ja","tag":"Docker Compose の使用","count":23},{"language":"ko","tag":"Docker Compose 사용","count":23},{"language":"nl","tag":"Docker Compose gebruiken","count":23},{"language":"no","tag":"Bruke Docker Compose","count":23},{"language":"pl","tag":"Korzystanie z Docker Compose","count":23},{"language":"pt","tag":"Usando o Docker Compose","count":23},{"language":"ru","tag":"Использование Docker Compose","count":23},{"language":"sv","tag":"Använda Docker Compose","count":23},{"language":"tr","tag":"Docker Compose kullanımı","count":23},{"language":"uk","tag":"Використання Docker Compose","count":23},{"language":"vi","tag":"Sử dụng Docker Compose","count":23},{"language":"zh-CN","tag":"使用 Docker Compose","count":23},{"language":"zh-Hans","tag":"使用 Docker Compose","count":23},{"language":"zh-Hant","tag":"使用 Docker Compose","count":23},{"language":"zh-TW","tag":"使用 Docker Compose","count":23},{"language":"en","tag":"User guide","count":21},{"language":"ar","tag":"التكاملات","count":20},{"language":"en","tag":"Integrations","count":20},{"language":"cs","tag":"Integrace","count":20},{"language":"da","tag":"Integrationer","count":20},{"language":"de","tag":"Integrationen","count":20},{"language":"es","tag":"Integraciones","count":20},{"language":"fi","tag":"Integraatiot","count":20},{"language":"fr","tag":"Intégrations","count":20},{"language":"id","tag":"Integrasi","count":20},{"language":"it","tag":"Integrazioni","count":20},{"language":"ja","tag":"連携","count":20},{"language":"ko","tag":"통합","count":20},{"language":"nl","tag":"Integraties","count":20},{"language":"no","tag":"Integrasjoner","count":20},{"language":"pl","tag":"Integracje","count":20},{"language":"pt","tag":"Integrações","count":20},{"language":"ru","tag":"Интеграции","count":20},{"language":"sv","tag":"Integrationer","count":20},{"language":"tr","tag":"Entegrasyonlar","count":20},{"language":"uk","tag":"Інтеграції","count":20},{"language":"vi","tag":"Tích hợp","count":20},{"language":"zh-CN","tag":"集成","count":20},{"language":"zh-Hans","tag":"集成","count":20},{"language":"zh-Hant","tag":"整合","count":20},{"language":"zh-TW","tag":"整合","count":20},{"language":"en","tag":"For users","count":16},{"language":"ar","tag":"المصادقة","count":12},{"language":"en","tag":"Authentication","count":12},{"language":"cs","tag":"Ověřování","count":12},{"language":"da","tag":"Godkendelse","count":12},{"language":"de","tag":"Authentifizierung","count":12},{"language":"es","tag":"Autenticación","count":12},{"language":"fi","tag":"Todennus","count":12},{"language":"fr","tag":"Authentification","count":12},{"language":"id","tag":"Autentikasi","count":12},{"language":"it","tag":"Autenticazione","count":12},{"language":"ja","tag":"認証","count":12},{"language":"ko","tag":"인증","count":12},{"language":"nl","tag":"Authenticatie","count":12},{"language":"no","tag":"Autentisering","count":12},{"language":"pl","tag":"Uwierzytelnianie","count":12},{"language":"pt","tag":"Autenticação","count":12},{"language":"ru","tag":"Аутентификация","count":12},{"language":"sv","tag":"Autentisering","count":12},{"language":"tr","tag":"Kimlik Doğrulama","count":12},{"language":"uk","tag":"Автентифікація","count":12},{"language":"vi","tag":"Xác thực","count":12},{"language":"zh-CN","tag":"身份验证","count":12},{"language":"zh-Hans","tag":"身份验证","count":12},{"language":"zh-Hant","tag":"身分驗證","count":12},{"language":"zh-TW","tag":"身分驗證","count":12},{"language":"ar","tag":"المطوّرون","count":11},{"language":"cs","tag":"Vývojáři","count":11},{"language":"da","tag":"Udvikler","count":11},{"language":"de","tag":"Entwickler","count":11},{"language":"es","tag":"Desarrollador","count":11},{"language":"fi","tag":"Kehittäjä","count":11},{"language":"fr","tag":"Développeur","count":11},{"language":"id","tag":"Pengembang","count":11},{"language":"it","tag":"Sviluppatore","count":11},{"language":"ja","tag":"開発者","count":11},{"language":"ko","tag":"개발자","count":11},{"language":"nl","tag":"Ontwikkelaar","count":11},{"language":"no","tag":"Utvikler","count":11},{"language":"pl","tag":"Dla deweloperów","count":11},{"language":"pt","tag":"Desenvolvedor","count":11},{"language":"ru","tag":"Разработчикам","count":11},{"language":"sv","tag":"Utvecklare","count":11},{"language":"tr","tag":"Geliştirici","count":11},{"language":"uk","tag":"Розробникам","count":11},{"language":"vi","tag":"Nhà phát triển","count":11},{"language":"zh-CN","tag":"开发者","count":11},{"language":"zh-Hans","tag":"开发者","count":11},{"language":"zh-Hant","tag":"開發者","count":11},{"language":"zh-TW","tag":"開發者","count":11},{"language":"ar","tag":"نظرة عامة","count":9},{"language":"cs","tag":"Přehled","count":9},{"language":"da","tag":"Oversigt","count":9},{"language":"de","tag":"Überblick","count":9},{"language":"es","tag":"Descripción general","count":9},{"language":"fi","tag":"Yleiskatsaus","count":9},{"language":"fr","tag":"Aperçu","count":9},{"language":"id","tag":"Ikhtisar","count":9},{"language":"it","tag":"Panoramica","count":9},{"language":"ja","tag":"概要","count":9},{"language":"ko","tag":"개요","count":9},{"language":"nl","tag":"Overzicht","count":9},{"language":"no","tag":"Oversikt","count":9},{"language":"pl","tag":"Przegląd","count":9},{"language":"pt","tag":"Visão geral","count":9},{"language":"ru","tag":"Обзор","count":9},{"language":"sv","tag":"Översikt","count":9},{"language":"tr","tag":"Genel Bakış","count":9},{"language":"uk","tag":"Огляд","count":9},{"language":"vi","tag":"Tổng quan","count":9},{"language":"zh-CN","tag":"概览","count":9},{"language":"zh-Hans","tag":"概览","count":9},{"language":"zh-Hant","tag":"概覽","count":9},{"language":"zh-TW","tag":"概覽","count":9}],"searchSettings":{"maxResults":6}},"assistantConfig":{"enableAskAiButton":false,"enableStarterQuestions":true,"enableContextualStarterQuestions":true,"enableAskAiSearchBar":true},"basePath":"","hasChatPermissions":true,"hasWebMcpPermissions":true,"toggles":[{"name":"kill-isr","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-mintlify-slack","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-integrations-settings","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"rbac-expansion","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-pr-grouping","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"custom-prefix","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"analytics-v7","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"user-flows-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"no-publish-flow","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-onboarding","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"llms-txt-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving-live","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"stripTemperatureMiddleware","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"support-platform-pylon-zendesk","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"instant-rollback","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications-server","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-fable","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fixed-ai-action-pricing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automation-resolve-merge-conflict","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"scoped-publishing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"mintql","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"page-level-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-version-history-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"billing-page-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"full-page-search","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workspace-projects","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"assistant-v5","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fork-pr-previews","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"revalidation-jwt","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-sso-scim","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"hobby-abuse-scan","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"dashboard-inbox","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-signup","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"turbopuffer-dual-write","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-enabled","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"approve-review-flow","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-metadata","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"sso-setup-deadline-banner","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"turbopuffer-serve","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"live-agents","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"comment-mode","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false}],"googleFontsInlined":false},"customCss":[{"filePath":"style.css","content":"@font-face{font-family:\"Site Sans\";src:url(\"/fonts/SiteSans-Text-Regular-Static.otf\") format(\"opentype\");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:\"Site Sans\";src:url(\"/fonts/SiteSans-Text-RegularItalic-Static.otf\") format(\"opentype\");font-weight:400;font-style:italic;font-display:swap}@font-face{font-family:\"Site Sans\";src:url(\"/fonts/SiteSans-Text-Medium-Static.otf\") format(\"opentype\");font-weight:500;font-style:normal;font-display:swap}@font-face{font-family:\"Site Sans\";src:url(\"/fonts/SiteSans-Text-MediumItalic-Static.otf\") format(\"opentype\");font-weight:500;font-style:italic;font-display:swap}@font-face{font-family:\"Site Sans\";src:url(\"/fonts/SiteSans-Text-Semibold-Static.otf\") format(\"opentype\");font-weight:600;font-style:normal;font-display:swap}@font-face{font-family:\"Site Sans\";src:url(\"/fonts/SiteSans-Text-SemiboldItalic-Static.otf\") format(\"opentype\");font-weight:600;font-style:italic;font-display:swap}@font-face{font-family:\"Site Sans\";src:url(\"/fonts/SiteSans-Text-Bold-Static.otf\") format(\"opentype\");font-weight:700;font-style:normal;font-display:swap}@font-face{font-family:\"Site Sans\";src:url(\"/fonts/SiteSans-Text-BoldItalic-Static.otf\") format(\"opentype\");font-weight:700;font-style:italic;font-display:swap}@font-face{font-family:\"Site Serif Display\";src:url(\"/fonts/SiteSerif-Display-Regular-Static.otf\") format(\"opentype\");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:\"Site Serif Display\";src:url(\"/fonts/SiteSerif-Display-RegularItalic-Static.otf\") format(\"opentype\");font-weight:400;font-style:italic;font-display:swap}@font-face{font-family:\"Site Serif Display\";src:url(\"/fonts/SiteSerif-Display-Medium-Static.otf\") format(\"opentype\");font-weight:500;font-style:normal;font-display:swap}@font-face{font-family:\"Site Serif Display\";src:url(\"/fonts/SiteSerif-Display-Semibold-Static.otf\") format(\"opentype\");font-weight:600;font-style:normal;font-display:swap}@font-face{font-family:\"Site Serif Display\";src:url(\"/fonts/SiteSerif-Display-Bold-Static.otf\") format(\"opentype\");font-weight:700;font-style:normal;font-display:swap}@font-face{font-family:\"Site Serif\";src:url(\"/fonts/SiteSerif-Text-Regular-Static.otf\") format(\"opentype\");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:\"Site Serif\";src:url(\"/fonts/SiteSerif-Text-RegularItalic-Static.otf\") format(\"opentype\");font-weight:400;font-style:italic;font-display:swap}@font-face{font-family:\"Site Serif\";src:url(\"/fonts/SiteSerif-Text-Medium-Static.otf\") format(\"opentype\");font-weight:500;font-style:normal;font-display:swap}@font-face{font-family:\"Site Serif\";src:url(\"/fonts/SiteSerif-Text-MediumItalic-Static.otf\") format(\"opentype\");font-weight:500;font-style:italic;font-display:swap}@font-face{font-family:\"Site Serif\";src:url(\"/fonts/SiteSerif-Text-Semibold-Static.otf\") format(\"opentype\");font-weight:600;font-style:normal;font-display:swap}@font-face{font-family:\"Site Serif\";src:url(\"/fonts/SiteSerif-Text-SemiboldItalic-Static.otf\") format(\"opentype\");font-weight:600;font-style:italic;font-display:swap}@font-face{font-family:\"Site Serif\";src:url(\"/fonts/SiteSerif-Text-Bold-Static.otf\") format(\"opentype\");font-weight:700;font-style:normal;font-display:swap}@font-face{font-family:\"Site Serif\";src:url(\"/fonts/SiteSerif-Text-BoldItalic-Static.otf\") format(\"opentype\");font-weight:700;font-style:italic;font-display:swap}:root{--always-white: 0 0% 100%;--always-black: 0 0% 0%;--constant-book-cloth: 15 55% 80%;--constant-clay: 15 60% 85%;--constant-kraft: 25 40% 83%;--constant-manilla: 40 20% 92%;--constant-slate-000: 0 0% 100%;--constant-slate-050: 48 33.3% 97.1%;--constant-slate-100: 53 28.6% 94.5%;--constant-slate-150: 48 25% 92.2%;--constant-slate-200: 50 20.7% 88.6%;--constant-slate-250: 51 16.5% 84.5%;--constant-slate-300: 50 11.5% 79.6%;--constant-slate-350: 50 9% 73.7%;--constant-slate-400: 49 6.5% 66.9%;--constant-slate-450: 48 4.8% 59.2%;--constant-slate-500: 53 3.2% 51.4%;--constant-slate-550: 51 3.1% 43.7%;--constant-slate-600: 48 2.7% 35.9%;--constant-slate-650: 48 3.4% 29.2%;--constant-slate-700: 60 2.5% 23.3%;--constant-slate-750: 60 2.1% 18.4%;--constant-slate-800: 60 2.7% 14.5%;--constant-slate-850: 30 3.3% 11.8%;--constant-slate-900: 30 4% 9.8%;--constant-slate-950: 60 2.6% 7.6%;--constant-slate-1000: 60 3.4% 5.7%}:root:not(.dark){--accent-brand: 15 63.1% 59.6%;--accent-main-000: 15 55.6% 52.4%;--accent-main-100: 15 55.6% 52.4%;--accent-main-200: 15 63.1% 59.6%;--accent-main-900: 0 0% 0%;--accent-pro-000: 251 34.2% 33.3%;--accent-pro-100: 251 40% 45.1%;--accent-pro-200: 251 61% 72.2%;--accent-pro-900: 253 33.3% 91.8%;--accent-secondary-000: 210 73.7% 40.2%;--accent-secondary-100: 210 70.9% 51.6%;--accent-secondary-200: 210 70.9% 51.6%;--accent-secondary-900: 211 72% 90%;--bg-000: 0 0% 100%;--bg-100: 48 33.3% 97.1%;--bg-200: 53 28.6% 94.5%;--bg-300: 48 25% 92.2%;--bg-400: 50 20.7% 88.6%;--bg-500: 50 20.7% 88.6%;--border-100: 30 3.3% 11.8%;--border-200: 30 3.3% 11.8%;--border-300: 30 3.3% 11.8%;--border-400: 30 3.3% 11.8%;--danger-000: 0 61.4% 22.4%;--danger-100: 0 58.6% 34.1%;--danger-200: 0 58.6% 34.1%;--danger-900: 0 50% 95%;--oncolor-100: 0 0% 100%;--oncolor-200: 60 6.7% 97.1%;--oncolor-300: 60 6.7% 97.1%;--text-000: 60 2.6% 7.6%;--text-100: 60 2.6% 7.6%;--text-200: 60 2.5% 23.3%;--text-300: 60 2.5% 23.3%;--text-400: 51 3.1% 43.7%;--text-500: 51 3.1% 43.7%}:root.dark{--accent-brand: 15 63.1% 59.6%;--accent-main-000: 15 55.6% 52.4%;--accent-main-100: 15 63.1% 59.6%;--accent-main-200: 15 63.1% 59.6%;--accent-main-900: 0 0% 0%;--accent-pro-000: 251 84.6% 74.5%;--accent-pro-100: 251 40.2% 54.1%;--accent-pro-200: 251 40% 45.1%;--accent-pro-900: 250 25.3% 19.4%;--accent-secondary-000: 210 71.1% 62%;--accent-secondary-100: 210 70.9% 51.6%;--accent-secondary-200: 210 70.9% 51.6%;--accent-secondary-900: 210 55.9% 24.6%;--bg-000: 60 2.1% 18.4%;--bg-100: 60 2.7% 14.5%;--bg-200: 30 3.3% 11.8%;--bg-300: 60 2.6% 7.6%;--bg-400: 60 3.4% 5.7%;--bg-500: 60 3.4% 5.7%;--border-100: 51 16.5% 84.5%;--border-200: 51 16.5% 84.5%;--border-300: 51 16.5% 84.5%;--border-400: 51 16.5% 84.5%;--danger-000: 0 73.1% 66.5%;--danger-100: 0 58.6% 34.1%;--danger-200: 0 58.6% 34.1%;--danger-900: 0 23% 15.6%;--oncolor-100: 0 0% 100%;--oncolor-200: 60 6.7% 97.1%;--oncolor-300: 60 6.7% 97.1%;--text-000: 48 33.3% 97.1%;--text-100: 48 33.3% 97.1%;--text-200: 50 9% 73.7%;--text-300: 50 9% 73.7%;--text-400: 48 4.8% 59.2%;--text-500: 48 4.8% 59.2%}#home-header{font-family:\"Site Sans\", system-ui, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif;font-weight:400!important;font-size:50px;line-height:1.2;margin-bottom:1rem;color:--text-000;display:flex;align-items:baseline;justify-content:center;flex-wrap:nowrap}#localization-select-trigger>:has(img[src*=\"flags\"]){display:none}div[id^=\"localization-select-item\"]>:has(img[src*=\"flags\"]){display:none}@media (min-width: 768px){#home-header{justify-content:center}}.build-with{font-family:\"Site Sans\", system-ui, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif;letter-spacing:-0.02em}.claude-wordmark-wrapper{display:inline-flex;align-items:baseline;margin-left:10px}.claude-wordmark{height:40px;width:auto;position:relative}.dark #home-header{color:white}.description-text{color:black}.dark .description-text{color:white}.dark .claude-wordmark{filter:invert(1)}:root{--bg-color: #f0efea}.dark{--bg-color: #2b2b2b}body,input,#category-select,.dropdown-item,#table-of-contents{font-family:\"Site Sans\", system-ui, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif}.eyebrow{font-family:\"Site Sans\", system-ui, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif;text-transform:uppercase;letter-spacing:0.02rem}#content-container{font-family:\"Site Sans\", system-ui, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif}#content-container h1,#content-container h2,#content-container h3,#content-container h4,#content-container h5,#content-container h6{font-family:\"Site Serif Display\", Georgia, \"Times New Roman\", Times, serif;font-weight:400;letter-spacing:0;word-spacing:0.1em}#content-container p{font-size:1rem;line-height:1.65rem}.font-extrabold{font-weight:600!important}.wide-table{width:100%;overflow-x:auto}.wide-table table{width:175%;margin-bottom:0}#prompt-library-container{margin:4rem auto;max-width:48rem;padding-left:1.25rem;padding-right:1.25rem}.prompt-library-title{font-size:24px;text-align:center;font-weight:700;color:#1f2937}.dark .prompt-library-title{color:#e5e7eb}.prompt-library-description{margin-top:1rem;text-align:center}.main-content{margin-bottom:10rem;max-width:64rem;margin-left:auto;margin-right:auto;padding-left:1.25rem;padding-right:1.25rem}.prompt-controllers{display:flex;gap:0.5rem}.prompt-search-container{position:relative;flex:1 1 0%}.prompt-search-icon-container{display:flex;position:absolute;top:0;bottom:0;left:0;align-items:center;padding-left:0.75rem}.prompt-search-icon{margin-left:0.25rem;margin-right:0.75rem;flex:none;width:1rem;height:1rem;background-color:#6b7280;mask-image:url(https://mintlify.b-cdn.net/v6.5.1/solid/magnifying-glass.svg);mask-repeat:no-repeat;mask-position:center center}input.prompt-search-bar{display:block;height:2.5rem;padding-left:2.5rem;border-radius:0.75rem;border-width:1px;background-color:#ffffff;width:100%;color:#111827;box-shadow:0 1px 2px 0 rgba(0, 0, 0, 0.05)}.dark input.prompt-search-bar{color:#ffffff;background-color:rgb(var(--background-dark));border-color:#d1d5db1a}input.prompt-search-bar:focus{outline-color:rgb(var(--primary))}.dark input.prompt-search-bar:focus{outline-color:rgb(var(--primary-light))}.dark .prompt-search-icon{background-color:#ffffff80}#category-select{padding-left:1rem;padding-right:2.5rem;height:2.5rem;display:flex;align-items:center;border-radius:0.75rem;border-width:1px;color:#111827;background-color:#ffffff;cursor:pointer;box-shadow:0 1px 2px 0 rgba(0, 0, 0, 0.05);white-space:nowrap}.dark #category-select{background-color:rgb(var(--background-dark));border-color:#d1d5db1a;color:#ffffff}#category-select:hover{background-color:#f9fafb}.dark #category-select:hover{background-color:#ffffff0d}#category-select:focus{outline-color:rgb(var(--primary))}.dark #category-select:focus{outline-color:rgb(var(--primary-light))}#categories-dropdown{top:calc(100% + 4px);padding:0.5rem 0.5rem;display:none;position:absolute;z-index:10;border-radius:0.75rem;border-width:1px;width:100%;color:#111827;background-color:#ffffff;box-shadow:0 1px 2px 0 rgba(0, 0, 0, 0.05)}.dark #categories-dropdown{background-color:rgb(var(--background-dark));border-color:#d1d5db1a;color:#ffffff}#categories-dropdown-clickout{position:fixed;top:0;right:0;bottom:0;left:0;z-index:0}.dropdown-icon-container{display:flex;position:absolute;top:0;bottom:0;right:0;align-items:center;padding-right:0.25rem}.dropdown-icon{margin-left:0.25rem;margin-right:0.75rem;flex:none;width:0.75rem;height:0.75rem;background-color:#6b7280;mask-image:url(https://mintlify.b-cdn.net/v6.5.1/solid/caret-down.svg);mask-repeat:no-repeat;mask-position:center center}.dark .dropdown-icon{background-color:#ffffff80}#prompts-container{grid-template-columns:repeat(1, minmax(0, 1fr));gap:2rem}.dropdown-item{padding:0.25rem 0.5rem;border-radius:0.375rem;display:flex;align-items:center;cursor:pointer}.dropdown-item:hover{background-color:#f9fafb}.dark .dropdown-item:hover{background-color:#ffffff0d}.check-icon{mask-image:url(https://mintlify.b-cdn.net/v6.5.1/solid/check.svg);height:0.875rem;width:1rem;background-color:rgb(var(--primary-light));mask-repeat:no-repeat;mask-position:center center}.prompt-card{margin:-0.75rem;padding:0.75rem;display:flex;border-radius:1rem}.prompt-card:hover{background-color:#03071208}.dark .prompt-card:hover{background-color:#ffffff08}.prompt-icon-container{display:flex;flex:none;align-items:center;justify-content:center;margin-right:1.5rem;border-radius:0.75rem;height:4rem;width:4rem;background-color:#cb785c1a}.prompt-icon{height:1.5rem;width:1.5rem;background-color:rgb(var(--primary-light));mask-repeat:no-repeat;mask-position:center center}.prompt-title{color:rgb(31 41 55);font-weight:600}.dark .prompt-title{color:rgb(229 231 235)}.prompt-description{margin-top:0.25rem}#prompts-container{display:grid;margin-top:2.5rem}@media (min-width: 640px){#category-select{width:16rem}}@media (min-width: 1024px){#prompts-container{grid-template-columns:repeat(2, minmax(0, 1fr))}}.home-cards-custom{display:grid;grid-template-columns:repeat(3, 1fr);grid-template-rows:repeat(2, auto);gap:1.5rem}.home-cards-custom .card{background:transparent;border:0.5px solid hsl(var(--border-300));border-radius:12px;padding:0.25rem}@media (max-width: 1024px){.home-cards-custom{grid-template-columns:repeat(2, 1fr);grid-template-rows:repeat(3, auto)}}@media (max-width: 768px){.home-cards-custom{grid-template-columns:1fr;grid-template-rows:repeat(6, auto)}}.relative{position:relative}.flex-1{flex:1 1 0%}.mermaid{position:relative;background-color:#FDFDFB;background-image:linear-gradient(rgba(235, 219, 188, .25) 1px, transparent 1px), /* Secondary color #EBDBBC with low opacity */\n linear-gradient(90deg, rgba(235, 219, 188, .25) 1px, transparent 1px),\n linear-gradient(rgba(235, 219, 188, .1) 1px, transparent 1px),\n linear-gradient(90deg, rgba(235, 219, 188, .1) 1px, transparent 1px);background-size:20px 20px,\n 20px 20px,\n 4px 4px,\n 4px 4px;background-position:-1px -1px,\n -1px -1px,\n -1px -1px,\n -1px -1px;padding:20px;border-radius:8px;border:1px solid rgba(235, 219, 188, .4);box-shadow:0 2px 4px rgba(64, 64, 62, 0.08)}.dark .mermaid{background-color:#1a1918;background-image:linear-gradient(rgba(212, 162, 127, .15) 1px, transparent 1px), /* Tertiary color #D4A27F with low opacity */\n linear-gradient(90deg, rgba(212, 162, 127, .15) 1px, transparent 1px),\n linear-gradient(rgba(212, 162, 127, .08) 1px, transparent 1px),\n linear-gradient(90deg, rgba(212, 162, 127, .08) 1px, transparent 1px);border:1px solid rgba(102, 102, 99, .5);box-shadow:0 2px 4px rgba(0, 0, 0, 0.2)}.digest-meta{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:0.5rem 1rem;padding:0.75rem 1rem;margin:1.5rem 0 2.5rem;border:1px solid hsl(var(--border-300) / 0.15);background:hsl(var(--bg-200));font-variant-numeric:tabular-nums;font-size:0.875rem;color:hsl(var(--text-400))}#content-container .digest-meta a{color:hsl(var(--accent-main-100));font-weight:500;text-decoration:none;border-bottom:none}#content-container .digest-meta a:hover{text-decoration:underline}.digest-feature{position:relative;margin:2.5rem 0;padding:1.875rem 1.875rem 1.625rem;background:radial-gradient(circle, hsl(var(--text-000) / 0.025) 1px, transparent 1px) 0 0 / 18px 18px,\n linear-gradient(180deg, hsl(var(--constant-manilla) / 0.55), hsl(var(--constant-manilla) / 0.38));border:1px solid hsl(var(--border-300) / 0.12);box-shadow:inset 0 1px 0 hsl(var(--text-000) / 0.04),\n 0 1px 2px hsl(var(--always-black) / 0.04)}.digest-feature::before{content:\"\";position:absolute;inset:0 auto 0 0;width:4px;background:hsl(var(--accent-brand))}.dark .digest-feature{background:radial-gradient(circle, hsl(var(--text-000) / 0.02) 1px, transparent 1px) 0 0 / 18px 18px,\n linear-gradient(180deg, hsl(var(--bg-000) / 0.75), hsl(var(--bg-000) / 0.5));border-color:hsl(var(--border-300) / 0.1);box-shadow:inset 0 1px 0 hsl(var(--text-000) / 0.03),\n 0 1px 2px hsl(var(--always-black) / 0.25)}.digest-feature>:first-child{margin-top:0}.digest-feature>:last-child{margin-bottom:0}.digest-feature-header{display:flex;align-items:center;flex-wrap:wrap;gap:0.625rem;margin:0 0 0.75rem}#content-container .digest-feature-title{font-family:\"Site Serif Display\", Georgia, serif;font-size:1.75rem;line-height:1.15;font-weight:500;letter-spacing:-0.015em;color:hsl(var(--text-000));margin:0}#content-container .digest-feature-pill{font-family:ui-monospace, \"SF Mono\", Menlo, Consolas, monospace;font-size:0.75rem;line-height:1;letter-spacing:0.01em;padding:0.3rem 0.6rem;border-radius:999px;background:hsl(var(--accent-brand) / 0.12);color:hsl(var(--accent-main-000));border:1px solid hsl(var(--accent-brand) / 0.25);white-space:nowrap;transform:translateY(1px)}#content-container .digest-feature-lede{font-size:1.0625rem;line-height:1.65;color:hsl(var(--text-100));margin:0 0 1.25rem;max-width:none}#content-container .digest-feature-lede code{font-size:0.875em;padding:0.1em 0.35em}#content-container .digest-feature-try{font-size:0.875rem;color:hsl(var(--text-400));margin:1.25rem 0 0.5rem}#content-container .digest-feature .frame{margin:1rem 0;border-radius:0;padding:0}#content-container .digest-feature .frame>*{border-radius:0}#content-container .digest-feature pre,#content-container .digest-feature [class*=\"CodeBlock\"]{border-radius:0}#content-container .digest-feature-link{display:inline-flex;align-items:center;gap:0.35rem;font-size:0.875rem;font-weight:500;color:hsl(var(--accent-main-100));text-decoration:none;border-bottom:none;margin-top:0.75rem}#content-container .digest-feature-link::after{content:\"→\";transition:transform 120ms ease-out}#content-container .digest-feature-link:hover::after{transform:translateX(3px)}.digest-wins{margin:2.5rem 0;padding:1.5rem 1.75rem 1.25rem;background:hsl(var(--bg-200));border:1px solid hsl(var(--border-300) / 0.1)}.dark .digest-wins{background:hsl(var(--bg-200) / 0.6)}#content-container .digest-wins-title{font-family:\"Site Serif Display\", Georgia, serif;font-size:1.25rem;font-weight:500;color:hsl(var(--text-000));margin:0 0 0.75rem}.digest-wins-grid{display:grid;grid-template-columns:repeat(auto-fit, minmax(16rem, 1fr));column-gap:2rem}#content-container .digest-wins-grid>div{position:relative;font-size:0.875rem;line-height:1.5;color:hsl(var(--text-300));padding:0.5rem 0 0.5rem 1.125rem;border-top:1px solid hsl(var(--border-300) / 0.06);margin:0}#content-container .digest-wins-grid>div::before{content:\"+\";position:absolute;left:0;top:0.5rem;font-family:ui-monospace, \"SF Mono\", Menlo, Consolas, monospace;font-size:0.8125rem;font-weight:600;color:hsl(var(--accent-brand))}#content-container .digest-wins-grid>div:first-child,#content-container .digest-wins-grid>div:nth-child(2){border-top:none;padding-top:0}#content-container .digest-wins-grid>div:first-child::before,#content-container .digest-wins-grid>div:nth-child(2)::before{top:0}#content-container .digest-wins-grid code{font-size:0.8125rem;padding:0.1em 0.3em}:root{--toc-wrapper-max: 92rem;--toc-wrapper-pad: 2rem;--toc-col: 19rem;--toc-side: 28rem;--toc-btn-size: 1.75rem}#toc-collapse-toggle{display:none;align-items:center;justify-content:center;position:fixed;top:10rem;right:calc(\n max((100% - var(--toc-wrapper-max)) / 2, 0px) + var(--toc-wrapper-pad) +\n var(--toc-col) - var(--toc-btn-size) - 0.35rem\n );transition:right 200ms ease-out;z-index:30;width:var(--toc-btn-size);height:var(--toc-btn-size);border-radius:9999px;border:1px solid hsl(var(--border-300) / 0.15);background:hsl(var(--bg-100));color:hsl(var(--text-400));cursor:pointer}#toc-collapse-toggle:hover{background:hsl(var(--bg-300));color:hsl(var(--text-100))}#toc-collapse-toggle svg{width:14px;height:14px;fill:none;stroke:currentColor;stroke-width:2.5;stroke-linecap:round;stroke-linejoin:round}#toc-collapse-toggle .toc-glyph{display:none;stroke-width:2}@media print{#toc-collapse-toggle{display:none!important}}@media (prefers-reduced-motion: reduce){#toc-collapse-toggle{transition:none}}@media (min-width: 1280px){html:has(#table-of-contents-layout) #toc-collapse-toggle{display:flex}html.toc-collapsed #toc-collapse-toggle .toc-chevron{transform:rotate(180deg)}html.toc-collapsed #toc-collapse-toggle{right:0.5rem;width:auto;padding:0 0.5rem;gap:0.25rem}html.toc-collapsed #toc-collapse-toggle .toc-glyph{display:block}html.toc-collapsed #table-of-contents-layout{display:none!important}html.toc-collapsed #content-side-layout:has(#table-of-contents-layout){display:none!important}html.toc-collapsed #content-container:has(#table-of-contents-layout) #content-area{width:100%!important}html.toc-collapsed #content-container:has(#table-of-contents-layout) #content-area>*{max-width:calc(var(--toc-wrapper-max) - var(--toc-side))}}@media (max-width: 640px){.digest-feature{padding:1.25rem 1rem 1rem;margin:1.5rem 0}#content-container .digest-feature-title{font-size:1.375rem}.digest-wins{padding:1.25rem 1rem 1rem}.digest-wins-grid{grid-template-columns:1fr}#content-container .digest-wins-grid>div:nth-child(2){border-top:1px solid hsl(var(--border-300) / 0.06);padding-top:0.5rem}#content-container .digest-wins-grid>div:nth-child(2)::before{top:0.5rem}}img[data-component-part=\"card-image\"]{aspect-ratio:16 / 9;height:auto;object-fit:cover;object-position:top center}"},{"filePath":"button.css","content":".btn{position:relative;display:inline-flex;gap:0.5rem;align-items:center;justify-content:center;flex-shrink:0;min-width:5rem;height:2.25rem;padding:0.5rem 1rem;white-space:nowrap;font-family:Styrene;font-weight:600;border-radius:0.5rem;\u0026:active{transform:scale(0.985)}\u0026.size-xs{height:1.75rem;min-width:3.5rem;padding:0 0.5rem;border-radius:0.25rem;font-size:0.75rem;gap:0.25rem}\u0026.size-sm{height:2rem;min-width:4rem;padding:0 0.75rem;border-radius:0.375rem;font-size:0.75rem}\u0026.size-lg{height:2.75rem;min-width:6rem;padding:0 1.25rem;border-radius:0.6rem}\u0026:disabled{pointer-events:none;opacity:0.5;box-shadow:none}\u0026:focus-visible{outline:none;--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow), var(--tw-ring-shadow)}\u0026.primary{font-weight:600;color:hsl(var(--oncolor-100));background-color:hsl(var(--accent-main-100));background-image:linear-gradient(\n to right,\n hsl(var(--accent-main-100)) 0%,\n hsl(var(--accent-main-200) / 0.5) 50%,\n hsl(var(--accent-main-200)) 100%\n );background-size:200% 100%;background-position:0% 0%;border:0.5px solid hsl(var(--border-300) / 0.25);box-shadow:inset 0 0.5px 0px rgba(255, 255, 0, 0.15),\n 0 1px 1px rgba(0, 0, 0, 0.05);text-shadow:0 1px 2px rgb(0 0 0 / 10%);transition:all 150ms cubic-bezier(0.4, 0, 0.2, 1);\u0026:hover{background-position:100% 0%;background-image:linear-gradient(\n to right,\n hsl(var(--accent-main-200)) 0%,\n hsl(var(--accent-main-200)) 100%\n )}\u0026:active{background-color:hsl(var(--accent-main-000));box-shadow:inset 0 1px 6px rgba(0, 0, 0, 0.2);transform:scale(0.985)}}\u0026.flat{font-weight:500;color:hsl(var(--oncolor-100));background-color:hsl(var(--accent-main-100));transition:background-color 150ms;\u0026:hover{background-color:hsl(var(--accent-main-200))}}\u0026.secondary{font-weight:600;color:hsl(var(--text-100) / 0.9);background-image:radial-gradient(\n ellipse at center,\n hsl(var(--bg-500) / 0.1) 50%,\n hsl(var(--bg-500) / 0.3) 100%\n );border:0.5px solid hsl(var(--border-400));transition:color 150ms, background-color 150ms;\u0026:hover{color:hsl(var(--text-000));background-color:hsl(var(--bg-500) / 0.6)}\u0026:active{background-color:hsl(var(--bg-500) / 0.5)}}\u0026.outline{font-weight:600;color:hsl(var(--text-200));background-color:transparent;border:1.5px solid currentColor;transition:color 150ms, background-color 150ms;\u0026:hover{color:hsl(var(--text-100));background-color:hsl(var(--bg-400));border-color:hsl(var(--bg-400))}}\u0026.ghost{color:hsl(var(--text-200));border-color:transparent;transition:color 150ms, background-color 150ms;\u0026:hover{color:hsl(var(--text-100));background-color:hsl(var(--bg-500) / 0.4)}\u0026:active{background-color:hsl(var(--bg-400))}}\u0026.underline{opacity:0.8;text-decoration-line:none;text-underline-offset:3px;transition:all 150ms;\u0026:hover{opacity:1;text-decoration-line:underline}\u0026:active{transform:scale(0.985)}}\u0026.danger{font-weight:600;color:hsl(var(--oncolor-100));background-color:hsl(var(--danger-100));transition:background-color 150ms;\u0026:hover{background-color:hsl(var(--danger-200))}}}"}],"page":{"pagePath":"vi/on-premises/installation/using-docker-compose/windows","slug":"/vi/on-premises/installation/using-docker-compose/windows","pageMetadata":{"title":"Windows","description":"Chạy một phiên bản Ayakaleaf Pro cục bộ trên Windows bằng WSL 2, Docker Desktop và Toolkit.","icon":"https://d3gk2c5xim1je2.cloudfront.net/fontawesome/v7.2.0/brands/windows.svg","href":"/vi/on-premises/installation/using-docker-compose/windows/index"},"description":{"compiledSource":"\"use strict\";\nconst {jsx: _jsx} = arguments[0];\nconst {useMDXComponents: _provideComponents} = arguments[0];\nfunction _createMdxContent(props) {\n const _components = {\n p: \"p\",\n ..._provideComponents(),\n ...props.components\n };\n return _jsx(_components.p, {\n children: \"Chạy một phiên bản Ayakaleaf Pro cục bộ trên Windows bằng WSL 2, Docker Desktop và Toolkit.\"\n });\n}\nfunction MDXContent(props = {}) {\n const {wrapper: MDXLayout} = {\n ..._provideComponents(),\n ...props.components\n };\n return MDXLayout ? _jsx(MDXLayout, {\n ...props,\n children: _jsx(_createMdxContent, {\n ...props\n })\n }) : _createMdxContent(props);\n}\nreturn {\n default: MDXContent\n};\n","frontmatter":{},"scope":{}},"pageType":"default","mdx":{"mdxSource":{"compiledSource":"\"use strict\";const{Fragment:_Fragment,jsx:_jsx,jsxs:_jsxs}=arguments[0];const{useMDXComponents:_provideComponents}=arguments[0];function _createMdxContent(props){const _components={a:`a`,code:`code`,li:`li`,p:`p`,strong:`strong`,ul:`ul`,..._provideComponents(),...props.components},{Card,Heading}=_components;if(!Card)_missingMdxReference(`Card`,true);if(!Heading)_missingMdxReference(`Heading`,true);return _jsxs(_Fragment,{children:[_jsxs(_components.p,{children:[`Trong phần này, chúng ta sẽ chạy Ayakaleaf Pro cục bộ trên Windows bằng WSL 2, Ubuntu, Docker Desktop và `,_jsx(_components.a,{href:`https://github.com/ayaka-notes/toolkit`,children:`Ayakaleaf Toolkit`}),`. Hướng dẫn sử dụng `,_jsx(_components.code,{children:`http://localhost:8080`}),`, lưu dữ liệu trong thư mục home của Ubuntu và bật sandboxed compiles.`]}),`\n`,_jsxs(_components.p,{children:[`Ứng dụng, MongoDB, Redis và TeX Live chạy trong các container Linux do Docker Desktop quản lý. Hãy chạy các lệnh Toolkit trong Ubuntu; mở ứng dụng trong trình duyệt trên Windows. `,_jsx(_components.a,{href:`/vi/on-premises/installation/using-docker-compose/windows/0.-setup-wsl-and-docker-desktop`,children:`Bước 0`}),` giải thích cách các thành phần Windows và Linux kết hợp với nhau và bắt đầu từ việc cài đặt WSL.`]}),`\n`,_jsxs(_components.p,{children:[`Bạn có thể dùng Windows cho một phiên bản cục bộ hoặc giữ nó chạy liên tục bằng các thiết lập về tính khả dụng ở bước 6. Đối với các máy chủ dùng chung và máy chủ production, chúng tôi khuyến nghị `,_jsx(_components.a,{href:`/vi/on-premises/installation/using-docker-compose/linux`,children:`hướng dẫn cho Linux`}),`, với HTTPS, sao lưu và kiểm soát truy cập. Chế độ ngủ của Windows, việc tắt Docker Desktop và việc tắt WSL sẽ làm gián đoạn phiên bản cục bộ này; xem `,_jsx(_components.a,{href:`/vi/on-premises/installation/using-docker-compose/windows/6.-post-installation-tasks#keep-the-instance-available`,children:`Giữ cho phiên bản luôn khả dụng`}),`.`]}),`\n`,_jsx(Heading,{level:`2`,id:`before-you-start`,children:`Trước khi bắt đầu`}),`\n`,_jsx(_components.p,{children:`Bạn cần:`}),`\n`,_jsxs(_components.ul,{children:[`\n`,_jsxs(_components.li,{children:[`Một phiên bản Windows và bộ xử lý được hỗ trợ bởi `,_jsx(_components.a,{href:`https://docs.docker.com/desktop/setup/install/windows-install/`,children:`Docker Desktop for Windows`}),`, với ảo hóa phần cứng được bật. Hướng dẫn này sử dụng Windows 11 trên x86-64.`]}),`\n`,_jsx(_components.li,{children:`Quyền bật WSL và cài đặt phần mềm. WSL phải là phiên bản 2.1.5 trở lên, với Ubuntu chạy ở chế độ WSL 2.`}),`\n`,_jsx(_components.li,{children:`Đủ bộ nhớ cho Windows và các container. Đối với một phiên bản cục bộ nhỏ, 4 CPU và 8 GB khả dụng cho Docker là điểm khởi đầu được gợi ý, không phải mức tối thiểu đã được đo lường.`}),`\n`,_jsxs(_components.li,{children:[`Dung lượng trống trên ổ đĩa Windows chứa dữ liệu WSL và Docker. Hãy dành ít nhất 40 GB cho một thiết lập TeX Live đầy đủ cộng với dữ liệu dự án; image basic ở `,_jsx(_components.a,{href:`/vi/on-premises/installation/using-docker-compose/windows/5.-personalizing-your-instance`,children:`bước 5`}),` nhỏ hơn và phù hợp cho lần thử nghiệm triển khai ban đầu. Các phiên bản image bổ sung cần thêm dung lượng.`]}),`\n`,_jsxs(_components.li,{children:[`Quyền truy cập mạng tới GitHub, GitHub Container Registry (`,_jsx(_components.code,{children:`ghcr.io`}),`) và Docker Hub để clone Toolkit và tải xuống các image.`]}),`\n`]}),`\n`,_jsxs(_components.p,{children:[`Các khối `,_jsx(_components.strong,{children:`PowerShell`}),` được chạy trong Windows. Các khối `,_jsx(_components.strong,{children:`Bash`}),` và các lệnh `,_jsx(_components.code,{children:`bin/`}),` được chạy trong Ubuntu trừ khi có ghi chú khác. Không chạy các script của Toolkit trong PowerShell hoặc Git Bash của Windows.`]}),`\n`,_jsx(Heading,{level:`2`,id:`steps`,children:`Các bước`}),`\n`,_jsx(Card,{title:`0. Cài đặt WSL 2 và Docker Desktop`,icon:`file-lines`,href:`/vi/on-premises/installation/using-docker-compose/windows/0.-setup-wsl-and-docker-desktop`,horizontal:true}),`\n`,_jsx(Card,{title:`1. Tải xuống Toolkit`,icon:`file-lines`,href:`/vi/on-premises/installation/using-docker-compose/windows/1.-download-the-toolkit`,horizontal:true}),`\n`,_jsx(Card,{title:`2. Làm quen với Toolkit`,icon:`file-lines`,href:`/vi/on-premises/installation/using-docker-compose/windows/2.-familiarize-yourself-with-the-toolkit`,horizontal:true}),`\n`,_jsx(Card,{title:`3. Khởi tạo cấu hình`,icon:`file-lines`,href:`/vi/on-premises/installation/using-docker-compose/windows/3.-initialize-the-configuration`,horizontal:true}),`\n`,_jsx(Card,{title:`4. Tải image Ayakaleaf Pro`,icon:`file-lines`,href:`/vi/on-premises/installation/using-docker-compose/windows/4.-get-ayakaleaf-pro-images`,horizontal:true}),`\n`,_jsx(Card,{title:`5. Cá nhân hóa phiên bản của bạn`,icon:`file-lines`,href:`/vi/on-premises/installation/using-docker-compose/windows/5.-personalizing-your-instance`,horizontal:true}),`\n`,_jsx(Card,{title:`6. Các tác vụ sau cài đặt`,icon:`file-lines`,href:`/vi/on-premises/installation/using-docker-compose/windows/6.-post-installation-tasks`,horizontal:true})]})}function MDXContent(props={}){const{wrapper:MDXLayout}={..._provideComponents(),...props.components};return MDXLayout?_jsx(MDXLayout,{...props,children:_jsx(_createMdxContent,{...props})}):_createMdxContent(props)}return{default:MDXContent};function _missingMdxReference(id,component){throw new Error(`Expected `+(component?`component`:`object`)+\" `\"+id+\"` to be defined: you likely forgot to import, pass, or provide it.\")}","frontmatter":{},"scope":{"config":{},"pageMetadata":{"title":"Windows","description":"Chạy một phiên bản Ayakaleaf Pro cục bộ trên Windows bằng WSL 2, Docker Desktop và Toolkit.","icon":"https://d3gk2c5xim1je2.cloudfront.net/fontawesome/v7.2.0/brands/windows.svg","href":"/vi/on-premises/installation/using-docker-compose/windows/index"}}},"mdxSourceWithNoJs":null},"mdxExtracts":{"tableOfContents":[{"title":"Trước khi bắt đầu","slug":"before-you-start","depth":2,"children":[]},{"title":"Các bước","slug":"steps","depth":2,"children":[]}],"codeExamples":{}},"jsLinks":[],"subdomain":"ayakaleaf-pro","siteName":"Ayakaleaf Pro","title":"Windows - Ayakaleaf Pro","contextualStarterQuestions":[],"navMaps":{"firstHrefInVersion":{},"firstHrefInLanguage":{"en":{"href":"/on-premises/installation/using-docker-compose/windows/index","matchLevel":1},"zh-CN":{"href":"/zh-CN/on-premises/installation/using-docker-compose/windows/index","matchLevel":1},"zh-TW":{"href":"/zh-TW/on-premises/installation/using-docker-compose/windows/index","matchLevel":1},"ja":{"href":"/ja/on-premises/installation/using-docker-compose/windows/index","matchLevel":1},"de":{"href":"/de/on-premises/installation/using-docker-compose/windows/index","matchLevel":1},"fr":{"href":"/fr/on-premises/installation/using-docker-compose/windows/index","matchLevel":1},"es":{"href":"/es/on-premises/installation/using-docker-compose/windows/index","matchLevel":1},"it":{"href":"/it/on-premises/installation/using-docker-compose/windows/index","matchLevel":1},"ko":{"href":"/ko/on-premises/installation/using-docker-compose/windows/index","matchLevel":1},"ru":{"href":"/ru/on-premises/installation/using-docker-compose/windows/index","matchLevel":1},"nl":{"href":"/nl/on-premises/installation/using-docker-compose/windows/index","matchLevel":1},"pt":{"href":"/pt/on-premises/installation/using-docker-compose/windows/index","matchLevel":1},"tr":{"href":"/tr/on-premises/installation/using-docker-compose/windows/index","matchLevel":1},"uk":{"href":"/uk/on-premises/installation/using-docker-compose/windows/index","matchLevel":1},"pl":{"href":"/pl/on-premises/installation/using-docker-compose/windows/index","matchLevel":1},"cs":{"href":"/cs/on-premises/installation/using-docker-compose/windows/index","matchLevel":1},"sv":{"href":"/sv/on-premises/installation/using-docker-compose/windows/index","matchLevel":1},"fi":{"href":"/fi/on-premises/installation/using-docker-compose/windows/index","matchLevel":1},"ar":{"href":"/ar/on-premises/installation/using-docker-compose/windows/index","matchLevel":1},"vi":{"href":"/vi/on-premises/installation/introduction","matchLevel":2},"no":{"href":"/no/on-premises/installation/using-docker-compose/windows/index","matchLevel":1},"da":{"href":"/da/on-premises/installation/using-docker-compose/windows/index","matchLevel":1},"id":{"href":"/id/on-premises/installation/using-docker-compose/windows/index","matchLevel":1},"zh-Hans":{"href":"/zh-Hans/on-premises/installation/using-docker-compose/windows/index","matchLevel":1},"zh-Hant":{"href":"/zh-Hant/on-premises/installation/using-docker-compose/windows/index","matchLevel":1}}},"lastModified":"2026-11-08T04:24:13.102Z","gitLastModified":"2026-11-08T04:23:51.000Z","originalFileLocation":"vi/on-premises/installation/using-docker-compose/windows/index.mdx","locale":"vi"},"headHtml":"\u003cscript data-mint-head>(function(){var d=document.documentElement,p=null;if(!p){try{p=localStorage.getItem(\"isDarkMode\")}catch(e){}if(p==='true')p='dark';else if(p==='false')p='light';if(p!=='light'\u0026\u0026p!=='dark'\u0026\u0026p!=='system')p=\"system\"}var r=p==='system'?(matchMedia(\"(prefers-color-scheme: dark)\").matches?'dark':'light'):p;d.classList.remove(r==='dark'?'light':'dark');d.classList.add(r);d.setAttribute(\"data-theme-preference\",p)})();\u003c/script>\u003cmeta data-mint-head name=\"description\" content=\"Chạy một phiên bản Ayakaleaf Pro cục bộ trên Windows bằng WSL 2, Docker Desktop và Toolkit.\">\u003cmeta data-mint-head name=\"application-name\" content=\"Ayakaleaf Pro\">\u003cmeta data-mint-head name=\"generator\" content=\"Mintlify\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/ayakaleaf-pro/o_LAbiVNKQm96Y75/_generated/favicon/android-chrome-192x192.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"apple-touch-icon\" type=\"image/png\" sizes=\"180x180\" href=\"/mintlify-assets/_mintlify/favicons/ayakaleaf-pro/o_LAbiVNKQm96Y75/_generated/favicon/apple-touch-icon.png\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/ayakaleaf-pro/o_LAbiVNKQm96Y75/_generated/favicon/favicon-16x16.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/mintlify-assets/_mintlify/favicons/ayakaleaf-pro/o_LAbiVNKQm96Y75/_generated/favicon/favicon-32x32.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/mintlify-assets/_mintlify/favicons/ayakaleaf-pro/o_LAbiVNKQm96Y75/_generated/favicon/favicon.ico\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/ayakaleaf-pro/o_LAbiVNKQm96Y75/_generated/favicon-dark/android-chrome-192x192.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/ayakaleaf-pro/o_LAbiVNKQm96Y75/_generated/favicon-dark/favicon-16x16.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/mintlify-assets/_mintlify/favicons/ayakaleaf-pro/o_LAbiVNKQm96Y75/_generated/favicon-dark/favicon-32x32.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/mintlify-assets/_mintlify/favicons/ayakaleaf-pro/o_LAbiVNKQm96Y75/_generated/favicon-dark/favicon.ico\" media=\"(prefers-color-scheme: dark)\">\u003cmeta data-mint-head property=\"og:title\" content=\"Windows - Ayakaleaf Pro\">\u003cmeta data-mint-head property=\"og:description\" content=\"Chạy một phiên bản Ayakaleaf Pro cục bộ trên Windows bằng WSL 2, Docker Desktop và Toolkit.\">\u003cmeta data-mint-head property=\"og:site_name\" content=\"Ayakaleaf Pro\">\u003cmeta data-mint-head property=\"og:url\" content=\"https://ayakaleaf-pro.mintlify.app/vi/on-premises/installation/using-docker-compose/windows\">\u003cmeta data-mint-head property=\"og:type\" content=\"website\">\u003cmeta data-mint-head property=\"og:image\" content=\"https://ayakaleaf-pro.mintlify.site/_mintlify/api/og/v2?division=Documentation\u0026amp;title=Windows\u0026amp;description=Ch%E1%BA%A1y+m%E1%BB%99t+phi%C3%AAn+b%E1%BA%A3n+Ayakaleaf+Pro+c%E1%BB%A5c+b%E1%BB%99+tr%C3%AAn+Windows+b%E1%BA%B1ng+WSL+2%2C+Docker+Desktop+v%C3%A0+Toolkit.\u0026amp;theme=a852d976fde0e13c2ab73efd\u0026amp;signature=1a5835bde0acb7352723fd8420ab688635d22cb470c0c7e7d920ee4911166300\">\u003cmeta data-mint-head property=\"og:image:width\" content=\"1200\">\u003cmeta data-mint-head property=\"og:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"twitter:card\" content=\"summary_large_image\">\u003cmeta data-mint-head name=\"twitter:title\" content=\"Windows - Ayakaleaf Pro\">\u003cmeta data-mint-head name=\"twitter:description\" content=\"Chạy một phiên bản Ayakaleaf Pro cục bộ trên Windows bằng WSL 2, Docker Desktop và Toolkit.\">\u003cmeta data-mint-head name=\"twitter:image\" content=\"https://ayakaleaf-pro.mintlify.site/_mintlify/api/og/v2?division=Documentation\u0026amp;title=Windows\u0026amp;description=Ch%E1%BA%A1y+m%E1%BB%99t+phi%C3%AAn+b%E1%BA%A3n+Ayakaleaf+Pro+c%E1%BB%A5c+b%E1%BB%99+tr%C3%AAn+Windows+b%E1%BA%B1ng+WSL+2%2C+Docker+Desktop+v%C3%A0+Toolkit.\u0026amp;theme=a852d976fde0e13c2ab73efd\u0026amp;signature=1a5835bde0acb7352723fd8420ab688635d22cb470c0c7e7d920ee4911166300\">\u003cmeta data-mint-head name=\"twitter:image:width\" content=\"1200\">\u003cmeta data-mint-head name=\"twitter:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"msapplication-config\" content=\"/mintlify-assets/_mintlify/favicons/ayakaleaf-pro/o_LAbiVNKQm96Y75/_generated/favicon/browserconfig.xml\">\u003cmeta data-mint-head name=\"apple-mobile-web-app-title\" content=\"Ayakaleaf Pro\">\u003cmeta data-mint-head name=\"msapplication-TileColor\" content=\"#0E0E0E\">\u003clink data-mint-head rel=\"canonical\" href=\"https://ayakaleaf-pro.mintlify.app/vi/on-premises/installation/using-docker-compose/windows\">\u003clink data-mint-head rel=\"alternate\" type=\"application/xml\" href=\"/sitemap.xml\">\u003clink data-mint-head rel=\"alternate\" type=\"text/markdown\" href=\"/vi/on-premises/installation/using-docker-compose/windows.md\">\u003clink data-mint-head rel=\"alternate\" hreflang=\"vi\" href=\"https://ayakaleaf-pro.mintlify.app/vi/on-premises/installation/using-docker-compose/windows\">\u003clink data-mint-head rel=\"alternate\" hreflang=\"en\" href=\"https://ayakaleaf-pro.mintlify.app/on-premises/installation/using-docker-compose/windows\">\u003clink data-mint-head rel=\"alternate\" hreflang=\"zh-CN\" href=\"https://ayakaleaf-pro.mintlify.app/zh-CN/on-premises/installation/using-docker-compose/windows\">\u003clink data-mint-head rel=\"alternate\" hreflang=\"zh-TW\" href=\"https://ayakaleaf-pro.mintlify.app/zh-TW/on-premises/installation/using-docker-compose/windows\">\u003clink data-mint-head rel=\"alternate\" hreflang=\"ja\" href=\"https://ayakaleaf-pro.mintlify.app/ja/on-premises/installation/using-docker-compose/windows\">\u003clink data-mint-head rel=\"alternate\" hreflang=\"de\" href=\"https://ayakaleaf-pro.mintlify.app/de/on-premises/installation/using-docker-compose/windows\">\u003clink data-mint-head rel=\"alternate\" hreflang=\"fr\" href=\"https://ayakaleaf-pro.mintlify.app/fr/on-premises/installation/using-docker-compose/windows\">\u003clink data-mint-head rel=\"alternate\" hreflang=\"es\" href=\"https://ayakaleaf-pro.mintlify.app/es/on-premises/installation/using-docker-compose/windows\">\u003clink data-mint-head rel=\"alternate\" hreflang=\"it\" href=\"https://ayakaleaf-pro.mintlify.app/it/on-premises/installation/using-docker-compose/windows\">\u003clink data-mint-head rel=\"alternate\" hreflang=\"ko\" href=\"https://ayakaleaf-pro.mintlify.app/ko/on-premises/installation/using-docker-compose/windows\">\u003clink data-mint-head rel=\"alternate\" hreflang=\"ru\" href=\"https://ayakaleaf-pro.mintlify.app/ru/on-premises/installation/using-docker-compose/windows\">\u003clink data-mint-head rel=\"alternate\" hreflang=\"nl\" href=\"https://ayakaleaf-pro.mintlify.app/nl/on-premises/installation/using-docker-compose/windows\">\u003clink data-mint-head rel=\"alternate\" hreflang=\"pt\" href=\"https://ayakaleaf-pro.mintlify.app/pt/on-premises/installation/using-docker-compose/windows\">\u003clink data-mint-head rel=\"alternate\" hreflang=\"tr\" href=\"https://ayakaleaf-pro.mintlify.app/tr/on-premises/installation/using-docker-compose/windows\">\u003clink data-mint-head rel=\"alternate\" hreflang=\"uk\" href=\"https://ayakaleaf-pro.mintlify.app/uk/on-premises/installation/using-docker-compose/windows\">\u003clink data-mint-head rel=\"alternate\" hreflang=\"pl\" href=\"https://ayakaleaf-pro.mintlify.app/pl/on-premises/installation/using-docker-compose/windows\">\u003clink data-mint-head rel=\"alternate\" hreflang=\"cs\" href=\"https://ayakaleaf-pro.mintlify.app/cs/on-premises/installation/using-docker-compose/windows\">\u003clink data-mint-head rel=\"alternate\" hreflang=\"sv\" href=\"https://ayakaleaf-pro.mintlify.app/sv/on-premises/installation/using-docker-compose/windows\">\u003clink data-mint-head rel=\"alternate\" hreflang=\"fi\" href=\"https://ayakaleaf-pro.mintlify.app/fi/on-premises/installation/using-docker-compose/windows\">\u003clink data-mint-head rel=\"alternate\" hreflang=\"ar\" href=\"https://ayakaleaf-pro.mintlify.app/ar/on-premises/installation/using-docker-compose/windows\">\u003clink data-mint-head rel=\"alternate\" hreflang=\"no\" href=\"https://ayakaleaf-pro.mintlify.app/no/on-premises/installation/using-docker-compose/windows\">\u003clink data-mint-head rel=\"alternate\" hreflang=\"da\" href=\"https://ayakaleaf-pro.mintlify.app/da/on-premises/installation/using-docker-compose/windows\">\u003clink data-mint-head rel=\"alternate\" hreflang=\"id\" href=\"https://ayakaleaf-pro.mintlify.app/id/on-premises/installation/using-docker-compose/windows\">\u003clink data-mint-head rel=\"alternate\" hreflang=\"zh-Hans\" href=\"https://ayakaleaf-pro.mintlify.app/zh-Hans/on-premises/installation/using-docker-compose/windows\">\u003clink data-mint-head rel=\"alternate\" hreflang=\"zh-Hant\" href=\"https://ayakaleaf-pro.mintlify.app/zh-Hant/on-premises/installation/using-docker-compose/windows\">\u003clink data-mint-head rel=\"alternate\" hreflang=\"x-default\" href=\"https://ayakaleaf-pro.mintlify.app/on-premises/installation/using-docker-compose/windows\">\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@graph\":[{\"@type\":\"Organization\",\"@id\":\"https://ayakaleaf-pro.mintlify.app/#organization\",\"name\":\"Ayakaleaf Pro\",\"url\":\"https://ayakaleaf-pro.mintlify.app\",\"logo\":{\"@type\":\"ImageObject\",\"url\":\"https://mintcdn.com/ayakaleaf-pro/JetHeEeglWIIXNds/logo/light.png?fit=max\u0026auto=format\u0026n=JetHeEeglWIIXNds\u0026q=85\u0026s=7f1abd8dcc74dd3b7cdafac9e6e82092\"}},{\"@type\":\"WebSite\",\"@id\":\"https://ayakaleaf-pro.mintlify.app#website\",\"name\":\"Ayakaleaf Pro\",\"url\":\"https://ayakaleaf-pro.mintlify.app\",\"publisher\":{\"@id\":\"https://ayakaleaf-pro.mintlify.app/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https://ayakaleaf-pro.mintlify.app/vi/on-premises/installation/using-docker-compose/windows#webpage\",\"url\":\"https://ayakaleaf-pro.mintlify.app/vi/on-premises/installation/using-docker-compose/windows\",\"name\":\"Windows\",\"description\":\"Chạy một phiên bản Ayakaleaf Pro cục bộ trên Windows bằng WSL 2, Docker Desktop và Toolkit.\",\"dateModified\":\"2026-11-08T04:23:51.000Z\",\"isPartOf\":{\"@id\":\"https://ayakaleaf-pro.mintlify.app#website\"},\"breadcrumb\":{\"@id\":\"https://ayakaleaf-pro.mintlify.app/vi/on-premises/installation/using-docker-compose/windows#breadcrumb\"}},{\"@type\":\"BreadcrumbList\",\"@id\":\"https://ayakaleaf-pro.mintlify.app/vi/on-premises/installation/using-docker-compose/windows#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Cài đặt\",\"item\":\"https://ayakaleaf-pro.mintlify.app/vi/on-premises/installation/introduction\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Sử dụng Docker Compose\",\"item\":\"https://ayakaleaf-pro.mintlify.app/vi/on-premises/installation/using-docker-compose/index\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"Windows\",\"item\":\"https://ayakaleaf-pro.mintlify.app/vi/on-premises/installation/using-docker-compose/windows/index\"},{\"@type\":\"ListItem\",\"position\":4,\"name\":\"Windows\",\"item\":\"https://ayakaleaf-pro.mintlify.app/vi/on-premises/installation/using-docker-compose/windows\"}]},{\"@type\":[\"Article\",\"TechArticle\"],\"@id\":\"https://ayakaleaf-pro.mintlify.app/vi/on-premises/installation/using-docker-compose/windows#article\",\"headline\":\"Windows\",\"name\":\"Windows\",\"description\":\"Chạy một phiên bản Ayakaleaf Pro cục bộ trên Windows bằng WSL 2, Docker Desktop và Toolkit.\",\"url\":\"https://ayakaleaf-pro.mintlify.app/vi/on-premises/installation/using-docker-compose/windows\",\"mainEntityOfPage\":{\"@id\":\"https://ayakaleaf-pro.mintlify.app/vi/on-premises/installation/using-docker-compose/windows#webpage\"},\"dateModified\":\"2026-11-08T04:23:51.000Z\",\"publisher\":{\"@id\":\"https://ayakaleaf-pro.mintlify.app/#organization\"},\"isPartOf\":{\"@id\":\"https://ayakaleaf-pro.mintlify.app#website\"}}]}\u003c/script>\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@type\":\"WebSite\",\"name\":\"Ayakaleaf Pro\",\"creator\":{\"@type\":\"Organization\",\"name\":\"Mintlify\",\"url\":\"https://mintlify.com\"}}\u003c/script>","siteName":"Ayakaleaf Pro","nav":{"global":null,"languages":[{"language":"en","default":true,"pages":[{"title":"en","href":"/on-premises/installation/using-docker-compose/windows"}]},{"language":"zh-CN","pages":[{"title":"zh-CN","href":"/zh-CN/on-premises/installation/using-docker-compose/windows"}]},{"language":"zh-TW","pages":[{"title":"zh-TW","href":"/zh-TW/on-premises/installation/using-docker-compose/windows"}]},{"language":"ja","pages":[{"title":"ja","href":"/ja/on-premises/installation/using-docker-compose/windows"}]},{"language":"de","pages":[{"title":"de","href":"/de/on-premises/installation/using-docker-compose/windows"}]},{"language":"fr","pages":[{"title":"fr","href":"/fr/on-premises/installation/using-docker-compose/windows"}]},{"language":"es","pages":[{"title":"es","href":"/es/on-premises/installation/using-docker-compose/windows"}]},{"language":"it","pages":[{"title":"it","href":"/it/on-premises/installation/using-docker-compose/windows"}]},{"language":"ko","pages":[{"title":"ko","href":"/ko/on-premises/installation/using-docker-compose/windows"}]},{"language":"ru","pages":[{"title":"ru","href":"/ru/on-premises/installation/using-docker-compose/windows"}]},{"language":"nl","pages":[{"title":"nl","href":"/nl/on-premises/installation/using-docker-compose/windows"}]},{"language":"pt","pages":[{"title":"pt","href":"/pt/on-premises/installation/using-docker-compose/windows"}]},{"language":"tr","pages":[{"title":"tr","href":"/tr/on-premises/installation/using-docker-compose/windows"}]},{"language":"uk","pages":[{"title":"uk","href":"/uk/on-premises/installation/using-docker-compose/windows"}]},{"language":"pl","pages":[{"title":"pl","href":"/pl/on-premises/installation/using-docker-compose/windows"}]},{"language":"cs","pages":[{"title":"cs","href":"/cs/on-premises/installation/using-docker-compose/windows"}]},{"language":"sv","pages":[{"title":"sv","href":"/sv/on-premises/installation/using-docker-compose/windows"}]},{"language":"fi","pages":[{"title":"fi","href":"/fi/on-premises/installation/using-docker-compose/windows"}]},{"language":"ar","pages":[{"title":"ar","href":"/ar/on-premises/installation/using-docker-compose/windows"}]},{"language":"vi","tabs":[{"tab":"Trang chủ","icon":"house-chimney","pages":[{"title":"Trang chủ","href":"/vi"}]},{"tab":"Tự triển khai (On-Premises)","icon":"server","groups":[{"group":"Tổng quan","pages":[{"group":"Chào mừng","icon":"hand-wave","root":{"title":"Chào mừng","icon":"hand-wave","href":"/vi/on-premises"},"pages":[{"title":"Tính năng và bản quyền","icon":"layer-plus","href":"/vi/on-premises/readme/features-and-copyright"},{"title":"Tin cậy và bảo mật","icon":"https://d3gk2c5xim1je2.cloudfront.net/fontawesome/v7.2.0/brands/expeditedssl.svg","href":"/vi/on-premises/readme/trust-and-security"},{"title":"Overleaf Server Pro so với Ayakaleaf Pro","icon":"scale-balanced","href":"/vi/on-premises/readme/ayakaleaf-pro-vs-server-pro"},{"title":"Hỏi và đáp","icon":"comment-question","href":"/vi/on-premises/readme/question-and-answer"}]},{"group":"Ghi chú phát hành","icon":"code-branch","root":{"title":"Ghi chú phát hành","icon":"code-branch","href":"/vi/on-premises/release-notes/index"},"pages":[{"title":"Ghi chú phát hành 6.x.x","href":"/vi/on-premises/release-notes/release-notes-6.x.x"}]}]},{"group":"Cài đặt","pages":[{"title":"Giới thiệu","icon":"map-location","href":"/vi/on-premises/installation/introduction"},{"group":"Sử dụng Docker Compose","icon":"https://d3gk2c5xim1je2.cloudfront.net/fontawesome/v7.2.0/brands/docker.svg","root":{"title":"Sử dụng Docker Compose","icon":"https://d3gk2c5xim1je2.cloudfront.net/fontawesome/v7.2.0/brands/docker.svg","href":"/vi/on-premises/installation/using-docker-compose/index"},"pages":[{"group":"Linux","icon":"https://d3gk2c5xim1je2.cloudfront.net/fontawesome/v7.2.0/brands/linux.svg","root":{"title":"Linux","icon":"https://d3gk2c5xim1je2.cloudfront.net/fontawesome/v7.2.0/brands/linux.svg","href":"/vi/on-premises/installation/using-docker-compose/linux/index"},"pages":[{"title":"0. Cài đặt Docker","icon":"https://d3gk2c5xim1je2.cloudfront.net/fontawesome/v7.2.0/brands/docker.svg","href":"/vi/on-premises/installation/using-docker-compose/linux/0.-setup-docker"},{"title":"1. Tải xuống Toolkit","icon":"arrow-down-to-bracket","href":"/vi/on-premises/installation/using-docker-compose/linux/1.-download-the-toolkit"},{"title":"2. Làm quen với Toolkit","icon":"magnifying-glass","href":"/vi/on-premises/installation/using-docker-compose/linux/2.-familiarize-yourself-with-the-toolkit"},{"title":"3. Khởi tạo cấu hình","icon":"circle-play","href":"/vi/on-premises/installation/using-docker-compose/linux/3.-initialize-the-configuration"},{"title":"4. Tải image Ayakaleaf Pro","icon":"split","href":"/vi/on-premises/installation/using-docker-compose/linux/4.-get-overleaf-pro-images"},{"title":"5. Cá nhân hóa phiên bản của bạn","icon":"square-sliders","href":"/vi/on-premises/installation/using-docker-compose/linux/5.-personalizing-your-instance"},{"title":"6. Các tác vụ sau cài đặt","icon":"ballot-check","href":"/vi/on-premises/installation/using-docker-compose/linux/6.-post-installation-tasks"}]},{"group":"macOS","icon":"https://d3gk2c5xim1je2.cloudfront.net/fontawesome/v7.2.0/brands/apple.svg","root":{"title":"macOS","icon":"https://d3gk2c5xim1je2.cloudfront.net/fontawesome/v7.2.0/brands/apple.svg","href":"/vi/on-premises/installation/using-docker-compose/macos/index"},"pages":[{"title":"0. Cài đặt Docker Desktop","icon":"https://d3gk2c5xim1je2.cloudfront.net/fontawesome/v7.2.0/brands/docker.svg","href":"/vi/on-premises/installation/using-docker-compose/macos/0.-setup-docker-desktop"},{"title":"1. Tải xuống Toolkit","icon":"arrow-down-to-bracket","href":"/vi/on-premises/installation/using-docker-compose/macos/1.-download-the-toolkit"},{"title":"2. Làm quen với Toolkit","icon":"magnifying-glass","href":"/vi/on-premises/installation/using-docker-compose/macos/2.-familiarize-yourself-with-the-toolkit"},{"title":"3. Khởi tạo cấu hình","icon":"circle-play","href":"/vi/on-premises/installation/using-docker-compose/macos/3.-initialize-the-configuration"},{"title":"4. Tải image Ayakaleaf Pro","icon":"split","href":"/vi/on-premises/installation/using-docker-compose/macos/4.-get-ayakaleaf-pro-images"},{"title":"5. Cá nhân hóa phiên bản của bạn","icon":"square-sliders","href":"/vi/on-premises/installation/using-docker-compose/macos/5.-personalizing-your-instance"},{"title":"6. Các tác vụ sau cài đặt","icon":"ballot-check","href":"/vi/on-premises/installation/using-docker-compose/macos/6.-post-installation-tasks"},{"title":"Khắc phục sự cố","description":"Các vấn đề gặp phải khi chạy Ayakaleaf Pro bằng Docker Desktop trên macOS, và cách kiểm tra chúng.","icon":"screwdriver-wrench","href":"/vi/on-premises/installation/using-docker-compose/macos/troubleshooting"}]},{"group":"Windows","icon":"https://d3gk2c5xim1je2.cloudfront.net/fontawesome/v7.2.0/brands/windows.svg","root":{"title":"Windows","icon":"https://d3gk2c5xim1je2.cloudfront.net/fontawesome/v7.2.0/brands/windows.svg","href":"/vi/on-premises/installation/using-docker-compose/windows/index"},"pages":[{"title":"0. Cài đặt WSL 2 và Docker Desktop","description":"Cài đặt WSL 2 và Ubuntu, sau đó kết nối Ubuntu với Docker Desktop trên Windows.","icon":"https://d3gk2c5xim1je2.cloudfront.net/fontawesome/v7.2.0/brands/docker.svg","href":"/vi/on-premises/installation/using-docker-compose/windows/0.-setup-wsl-and-docker-desktop"},{"title":"1. Tải xuống Toolkit","description":"Cài đặt các phụ thuộc dòng lệnh và clone Ayakaleaf Toolkit trong Ubuntu trên WSL 2.","icon":"arrow-down-to-bracket","href":"/vi/on-premises/installation/using-docker-compose/windows/1.-download-the-toolkit"},{"title":"2. Làm quen với Toolkit","description":"Những điểm khác biệt trên Windows khi bạn chạy các script của Toolkit trong WSL 2.","icon":"magnifying-glass","href":"/vi/on-premises/installation/using-docker-compose/windows/2.-familiarize-yourself-with-the-toolkit"},{"title":"3. Khởi tạo cấu hình","description":"Tạo các tệp cấu hình của Toolkit trong Ubuntu trên WSL 2 bằng bin/init.","icon":"circle-play","href":"/vi/on-premises/installation/using-docker-compose/windows/3.-initialize-the-configuration"},{"title":"4. Tải image Ayakaleaf Pro","description":"Chuyển Toolkit trong Ubuntu trên WSL 2 sang image Ayakaleaf Pro công khai.","icon":"split","href":"/vi/on-premises/installation/using-docker-compose/windows/4.-get-ayakaleaf-pro-images"},{"title":"5. Cá nhân hóa phiên bản của bạn","description":"Đặt cổng, URL trang web và TeX Live image, bật sandboxed compiles và khởi động Ayakaleaf Pro trên WSL 2.","icon":"square-sliders","href":"/vi/on-premises/installation/using-docker-compose/windows/5.-personalizing-your-instance"},{"title":"6. Các tác vụ sau cài đặt","description":"Tạo quản trị viên, xác minh sandboxed compiles và tính bền vững của dữ liệu, và giữ Ayakaleaf Pro luôn chạy trên Windows.","icon":"ballot-check","href":"/vi/on-premises/installation/using-docker-compose/windows/6.-post-installation-tasks"},{"title":"Khắc phục sự cố","description":"Chẩn đoán tích hợp Docker Desktop, khởi động MongoDB, truy cập localhost từ Windows và sandboxed compiles trên WSL 2.","icon":"wrench","href":"/vi/on-premises/installation/using-docker-compose/windows/troubleshooting"}]}]},{"group":"Sử dụng Kubernetes","icon":"dharmachakra","root":{"title":"Sử dụng Kubernetes","icon":"dharmachakra","href":"/vi/on-premises/installation/using-kubernetes/index"},"pages":[{"title":"0. Chuẩn bị các node","icon":"server","href":"/vi/on-premises/installation/using-kubernetes/0.-prepare-the-nodes"},{"title":"1. Tải image Ayakaleaf Pro","icon":"split","href":"/vi/on-premises/installation/using-kubernetes/1.-get-ayakaleaf-pro-images"},{"title":"2. Tạo namespace và secret","icon":"key","href":"/vi/on-premises/installation/using-kubernetes/2.-create-the-namespace-and-secrets"},{"title":"3. Triển khai MongoDB và Redis","icon":"database","href":"/vi/on-premises/installation/using-kubernetes/3.-deploy-mongodb-and-redis"},{"title":"4. Cá nhân hóa phiên bản của bạn","icon":"square-sliders","href":"/vi/on-premises/installation/using-kubernetes/4.-personalizing-your-instance"},{"title":"5. Triển khai Ayakaleaf Pro","icon":"rocket-launch","href":"/vi/on-premises/installation/using-kubernetes/5.-deploy-ayakaleaf-pro"},{"title":"6. Các tác vụ sau cài đặt","icon":"ballot-check","href":"/vi/on-premises/installation/using-kubernetes/6.-post-installation-tasks"}]},{"title":"Sử dụng Claude hoặc Codex","icon":"https://d3gk2c5xim1je2.cloudfront.net/fontawesome/v7.2.0/brands/claude.svg","href":"/vi/on-premises/installation/using-claude-or-codex"},{"title":"Sử dụng GitHub Codespace","icon":"https://d3gk2c5xim1je2.cloudfront.net/fontawesome/v7.2.0/brands/github.svg","href":"/vi/on-premises/installation/using-the-github-codespace"},{"title":"Triển khai air-gapped/ngoại tuyến","icon":"block-brick","href":"/vi/on-premises/installation/air-gapped-offline-deployments"},{"title":"Di chuyển từ bản cài đặt hiện có","icon":"u-turn-up-right","href":"/vi/on-premises/installation/migrate-from-existing"}]},{"group":"Cấu hình","pages":[{"group":"Docker Compose","icon":"https://d3gk2c5xim1je2.cloudfront.net/fontawesome/v7.2.0/brands/docker.svg","root":{"title":"Docker Compose","icon":"https://d3gk2c5xim1je2.cloudfront.net/fontawesome/v7.2.0/brands/docker.svg","href":"/vi/on-premises/configuration/overleaf-toolkit/index"},"pages":[{"title":"Tệp và vị trí","icon":"folder-open","href":"/vi/on-premises/configuration/overleaf-toolkit/files-and-locations"},{"title":"Cài đặt Toolkit","icon":"gear-complex","href":"/vi/on-premises/configuration/overleaf-toolkit/toolkit-settings"},{"title":"Biến môi trường","icon":"seedling","href":"/vi/on-premises/configuration/overleaf-toolkit/environment-variables"},{"group":"Xác thực","icon":"address-card","root":{"title":"Xác thực","icon":"address-card","href":"/vi/on-premises/configuration/overleaf-toolkit/authentication/index"},"pages":[{"title":"Xác thực OIDC","icon":"id-card-clip","href":"/vi/on-premises/configuration/overleaf-toolkit/authentication/oidc-authentication"},{"title":"Xác thực SAML","icon":"key","href":"/vi/on-premises/configuration/overleaf-toolkit/authentication/saml-authentication"},{"title":"Xác thực LDAP","icon":"lock","href":"/vi/on-premises/configuration/overleaf-toolkit/authentication/ldap-authentication"},{"title":"Truy cập công khai","icon":"lock-open","href":"/vi/on-premises/configuration/overleaf-toolkit/authentication/public-access"},{"title":"reCAPTCHA","icon":"robot","href":"/vi/on-premises/configuration/overleaf-toolkit/authentication/recaptcha"},{"title":"Hạn chế mật khẩu","icon":"key","href":"/vi/on-premises/configuration/overleaf-toolkit/authentication/password-restrictions"}]},{"title":"Biên dịch trong sandbox","icon":"gear-code","href":"/vi/on-premises/configuration/overleaf-toolkit/sandboxed-compiles"},{"title":"Nhập và xuất bằng Pandoc","icon":"file-lines","href":"/vi/on-premises/configuration/overleaf-toolkit/pandoc-import-and-export"},{"group":"Tích hợp","icon":"puzzle-piece","root":{"title":"Tích hợp","icon":"puzzle-piece","href":"/vi/on-premises/configuration/overleaf-toolkit/integrations/index"},"pages":[{"title":"Tích hợp Git","icon":"https://d3gk2c5xim1je2.cloudfront.net/fontawesome/v7.2.0/brands/git-alt.svg","href":"/vi/on-premises/configuration/overleaf-toolkit/integrations/git-integration"},{"title":"Đồng bộ hóa GitHub","icon":"https://d3gk2c5xim1je2.cloudfront.net/fontawesome/v7.2.0/brands/github.svg","href":"/vi/on-premises/configuration/overleaf-toolkit/integrations/github-synchronisation"},{"title":"Đồng bộ hóa GitLab","icon":"https://d3gk2c5xim1je2.cloudfront.net/fontawesome/v7.2.0/brands/gitlab.svg","href":"/vi/on-premises/configuration/overleaf-toolkit/integrations/gitlab-synchronisation"},{"title":"Đồng bộ hóa Gitea","icon":"mug-hot","href":"/vi/on-premises/configuration/overleaf-toolkit/integrations/gitea-synchronisation"},{"title":"Đồng bộ hóa Dropbox","icon":"https://d3gk2c5xim1je2.cloudfront.net/fontawesome/v7.2.0/brands/dropbox.svg","href":"/vi/on-premises/configuration/overleaf-toolkit/integrations/dropbox-synchronisation"},{"title":"Tích hợp Zotero","icon":"z","href":"/vi/on-premises/configuration/overleaf-toolkit/integrations/zotero-integration"},{"title":"Tích hợp Mendeley","icon":"https://d3gk2c5xim1je2.cloudfront.net/fontawesome/v7.2.0/brands/mendeley.svg","href":"/vi/on-premises/configuration/overleaf-toolkit/integrations/mendeley-integration"},{"title":"MCP Server","icon":"plug","href":"/vi/on-premises/configuration/overleaf-toolkit/integrations/mcp-server"},{"title":"Tích hợp AI","icon":"https://d3gk2c5xim1je2.cloudfront.net/fontawesome/v7.2.0/brands/openai.svg","href":"/vi/on-premises/configuration/overleaf-toolkit/integrations/ai-integration"},{"title":"Overleaf Import API","icon":"rectangle-api","href":"/vi/on-premises/configuration/overleaf-toolkit/integrations/overleaf-import-api"}]},{"title":"Mẫu","icon":"paste","href":"/vi/on-premises/configuration/overleaf-toolkit/templates"},{"title":"URL bên ngoài","icon":"link","href":"/vi/on-premises/configuration/overleaf-toolkit/external-url"},{"title":"Ghi log","icon":"memo-circle-info","href":"/vi/on-premises/configuration/overleaf-toolkit/logging"},{"title":"Proxy TLS","icon":"lock","href":"/vi/on-premises/configuration/overleaf-toolkit/tls-proxy"},{"title":"Thương hiệu","icon":"copyright","href":"/vi/on-premises/configuration/overleaf-toolkit/branding"},{"title":"Bản địa hóa","icon":"globe-pointer","href":"/vi/on-premises/configuration/overleaf-toolkit/localization"},{"title":"Gửi email","icon":"paper-plane-top","href":"/vi/on-premises/configuration/overleaf-toolkit/email-delivery"},{"title":"Redis","icon":"memory","href":"/vi/on-premises/configuration/overleaf-toolkit/redis"},{"title":"S3","icon":"https://d3gk2c5xim1je2.cloudfront.net/fontawesome/v7.2.0/brands/aws.svg","href":"/vi/on-premises/configuration/overleaf-toolkit/s3"},{"title":"Thêm trợ giúp LaTeX cho người dùng","icon":"graduation-cap","href":"/vi/on-premises/configuration/overleaf-toolkit/adding-latex-user-help"}]},{"group":"Kubernetes","icon":"dharmachakra","root":{"title":"Kubernetes","icon":"dharmachakra","href":"/vi/on-premises/configuration/kubernetes/index"},"pages":[{"group":"Xác thực","icon":"address-card","root":{"title":"Xác thực","icon":"address-card","href":"/vi/on-premises/configuration/kubernetes/authentication/index"},"pages":[{"title":"Xác thực OIDC","icon":"id-card-clip","href":"/vi/on-premises/configuration/kubernetes/authentication/oidc-authentication"},{"title":"Xác thực SAML","icon":"building-columns","href":"/vi/on-premises/configuration/kubernetes/authentication/saml-authentication"},{"title":"Xác thực LDAP","icon":"address-book","href":"/vi/on-premises/configuration/kubernetes/authentication/ldap-authentication"},{"title":"Truy cập công khai","icon":"lock-open","href":"/vi/on-premises/configuration/kubernetes/authentication/public-access"},{"title":"reCAPTCHA","icon":"robot","href":"/vi/on-premises/configuration/kubernetes/authentication/recaptcha"},{"title":"Hạn chế mật khẩu","icon":"key","href":"/vi/on-premises/configuration/kubernetes/authentication/password-restrictions"}]},{"title":"Biên dịch trong sandbox","icon":"gear-code","href":"/vi/on-premises/configuration/kubernetes/sandboxed-compiles"},{"title":"Nhập và xuất bằng Pandoc","icon":"file-lines","href":"/vi/on-premises/configuration/kubernetes/pandoc-import-and-export"},{"group":"Tích hợp","icon":"puzzle-piece","root":{"title":"Tích hợp","icon":"puzzle-piece","href":"/vi/on-premises/configuration/kubernetes/integrations/index"},"pages":[{"title":"Tích hợp Git","icon":"code-branch","href":"/vi/on-premises/configuration/kubernetes/integrations/git-integration"},{"title":"Đồng bộ hóa GitHub","icon":"https://d3gk2c5xim1je2.cloudfront.net/fontawesome/v7.2.0/brands/github.svg","href":"/vi/on-premises/configuration/kubernetes/integrations/github-synchronisation"},{"title":"Đồng bộ hóa GitLab","icon":"https://d3gk2c5xim1je2.cloudfront.net/fontawesome/v7.2.0/brands/gitlab.svg","href":"/vi/on-premises/configuration/kubernetes/integrations/gitlab-synchronisation"},{"title":"Đồng bộ hóa Gitea","icon":"mug-hot","href":"/vi/on-premises/configuration/kubernetes/integrations/gitea-synchronisation"},{"title":"Đồng bộ hóa Dropbox","icon":"https://d3gk2c5xim1je2.cloudfront.net/fontawesome/v7.2.0/brands/dropbox.svg","href":"/vi/on-premises/configuration/kubernetes/integrations/dropbox-synchronisation"},{"title":"Tích hợp Zotero","icon":"z","href":"/vi/on-premises/configuration/kubernetes/integrations/zotero-integration"},{"title":"Tích hợp Mendeley","icon":"https://d3gk2c5xim1je2.cloudfront.net/fontawesome/v7.2.0/brands/mendeley.svg","href":"/vi/on-premises/configuration/kubernetes/integrations/mendeley-integration"},{"title":"MCP Server","icon":"plug","href":"/vi/on-premises/configuration/kubernetes/integrations/mcp-server"},{"title":"Tích hợp AI","icon":"https://d3gk2c5xim1je2.cloudfront.net/fontawesome/v7.2.0/brands/openai.svg","href":"/vi/on-premises/configuration/kubernetes/integrations/ai-integration"},{"title":"Overleaf Import API","icon":"rectangle-api","href":"/vi/on-premises/configuration/kubernetes/integrations/overleaf-import-api"}]},{"title":"Mẫu","icon":"paste","href":"/vi/on-premises/configuration/kubernetes/templates"},{"title":"URL bên ngoài","icon":"link","href":"/vi/on-premises/configuration/kubernetes/external-url"},{"title":"Ghi log","icon":"memo-circle-info","href":"/vi/on-premises/configuration/kubernetes/logging"},{"title":"Proxy TLS","icon":"lock","href":"/vi/on-premises/configuration/kubernetes/tls-proxy"},{"title":"Thương hiệu","icon":"copyright","href":"/vi/on-premises/configuration/kubernetes/branding"},{"title":"Bản địa hóa","icon":"globe-pointer","href":"/vi/on-premises/configuration/kubernetes/localization"},{"title":"Gửi email","icon":"paper-plane-top","href":"/vi/on-premises/configuration/kubernetes/email-delivery"},{"title":"Redis","icon":"memory","href":"/vi/on-premises/configuration/kubernetes/redis"},{"title":"S3","icon":"https://d3gk2c5xim1je2.cloudfront.net/fontawesome/v7.2.0/brands/aws.svg","href":"/vi/on-premises/configuration/kubernetes/s3"},{"title":"Thêm trợ giúp LaTeX cho người dùng","icon":"graduation-cap","href":"/vi/on-premises/configuration/kubernetes/adding-latex-user-help"},{"title":"Mở rộng theo chiều ngang","icon":"layer-group","href":"/vi/on-premises/configuration/kubernetes/horizontal-scaling"}]}]},{"group":"Bảo trì","pages":[{"title":"Di chuyển từ docker-compose.yml sang Toolkit","icon":"right-left","href":"/vi/on-premises/maintenance/docker-compose.yml-to-toolkit-migration"},{"title":"Nâng cấp triển khai của bạn","icon":"arrow-up-from-square","href":"/vi/on-premises/maintenance/upgrading-your-deployment"},{"title":"Nâng cấp trên Kubernetes","icon":"arrow-up-from-square","href":"/vi/on-premises/maintenance/upgrading-on-kubernetes"},{"group":"Dữ liệu và sao lưu","icon":"database","root":{"title":"Dữ liệu và sao lưu","icon":"database","href":"/vi/on-premises/maintenance/data-and-backups/index"},"pages":[{"title":"Xuất dự án","icon":"file-export","href":"/vi/on-premises/maintenance/data-and-backups/exporting-projects"}]},{"title":"Mở rộng TeX Live","icon":"rectangle-pro","href":"/vi/on-premises/maintenance/extending-tex-live"},{"title":"Tự động cập nhật TeX Live Full Image","icon":"arrows-rotate","href":"/vi/on-premises/maintenance/updating-tex-live-full-images-automatically"},{"title":"Mở rộng theo chiều ngang","icon":"distribute-spacing-horizontal","href":"/vi/on-premises/maintenance/horizontal-scaling"},{"title":"Di chuyển sang S3","icon":"https://d3gk2c5xim1je2.cloudfront.net/fontawesome/v7.2.0/brands/aws.svg","href":"/vi/on-premises/maintenance/s3-migration"},{"title":"Cập nhật MongoDB","icon":"database","href":"/vi/on-premises/maintenance/updating-mongodb"}]},{"group":"Quản lý người dùng và dự án","pages":[{"title":"Vai trò và quyền hạn","icon":"list-check","href":"/vi/on-premises/user-and-project-management/roles-and-permissions"},{"group":"Quản lý người dùng","icon":"users-between-lines","root":{"title":"Quản lý người dùng","icon":"users-between-lines","href":"/vi/on-premises/user-and-project-management/user-management/index"},"pages":[{"title":"Di chuyển tên người dùng","icon":"lock","href":"/vi/on-premises/user-and-project-management/user-management/username-migration"},{"title":"Chuyển sang LDAP hoặc SAML","icon":"rectangle-pro","href":"/vi/on-premises/user-and-project-management/user-management/migrating-to-ldap-or-saml"}]},{"group":"Quản lý dự án","icon":"rectangle-history","root":{"title":"Quản lý dự án","icon":"rectangle-history","href":"/vi/on-premises/user-and-project-management/project-management/index"},"pages":[{"title":"Chuyển quyền sở hữu dự án hàng loạt","icon":"lock","href":"/vi/on-premises/user-and-project-management/project-management/bulk-transfer-of-project-ownership"}]}]},{"group":"Hỗ trợ","pages":[{"title":"Giới hạn dự án","icon":"list-check","href":"/vi/on-premises/support/project-limits"},{"title":"Khắc phục sự cố","icon":"comments-question-check","href":"/vi/on-premises/support/troubleshooting"},{"title":"Nhận trợ giúp","icon":"truck-medical","href":"/vi/on-premises/support/getting-help"},{"group":"Hướng dẫn hỗ trợ","icon":"message-question","root":{"title":"Hướng dẫn hỗ trợ","icon":"message-question","href":"/vi/on-premises/support/support-guides/index"},"pages":[{"title":"Sử dụng mẫu với tư cách cá nhân","icon":"rectangle-vertical-history","href":"/vi/on-premises/support/support-guides/using-templates-as-an-individual"}]}]}]},{"tab":"Blog","icon":"rss","pages":[{"title":"Blog","href":"/vi/blog"}]},{"tab":"TeXLive","icon":"compact-disc","pages":[{"title":"TeXLive","href":"/vi/texlive"}]},{"tab":"Nhà phát triển","icon":"rectangle-terminal","pages":[{"title":"Nhà phát triển","href":"/vi/dev"}]}]},{"language":"no","pages":[{"title":"no","href":"/no/on-premises/installation/using-docker-compose/windows"}]},{"language":"da","pages":[{"title":"da","href":"/da/on-premises/installation/using-docker-compose/windows"}]},{"language":"id","pages":[{"title":"id","href":"/id/on-premises/installation/using-docker-compose/windows"}]},{"language":"zh-Hans","pages":[{"title":"zh-Hans","href":"/zh-Hans/on-premises/installation/using-docker-compose/windows"}]},{"language":"zh-Hant","pages":[{"title":"zh-Hant","href":"/zh-Hant/on-premises/installation/using-docker-compose/windows"}]}]},"basePath":"","title":"Windows - Ayakaleaf Pro","buildId":"dpl_FWZhTb2vab28gFGFH4ojka6qEznQ","deploymentId":"dpl_FWZhTb2vab28gFGFH4ojka6qEznQ","dynamics":[],"chunks":[]}