Skip to main content
Nhìn chung, chúng tôi không khuyến nghị triển khai Ayakaleaf Pro trong môi trường ngoại tuyến, vì nhiều tính năng của nó, chẳng hạn như GitHub Sync và tích hợp Zotero, yêu cầu kết nối internet. Nếu bạn muốn làm việc ngoại tuyến, không phải lúc nào cũng có thể truy cập registry ghcr.io để pull các image ayakaleaf-pro và TeX Live cần thiết. Đây không phải là vấn đề, vì Docker cung cấp công cụ để xuất và nhập image, giúp bạn triển khai ngoại tuyến/air-gapped. Nói một cách tổng quát, bạn sẽ tải các image cần thiết trên một thiết bị có kết nối internet, xuất chúng sang một thiết bị di động (hoặc chuyển chúng bằng SCP/Rsync), rồi nhập chúng trên máy chủ air-gapped. Để làm điều này, bạn cần hoàn thành các bước sau:
  • Pull tất cả các image cần thiết (overleaf-pro, git-bridge, mongo, redis + mọi TeX Live image cần thiết để sử dụng với Sandboxed Compiles) trên một máy có kết nối internet
    • docker pull ghcr.io/ayaka-notes/overleaf-pro:6.3.0
    • docker pull ghcr.io/ayaka-notes/overleaf-pro/git-bridge:6.3.0 (tag phải giống với overleaf-pro)
    • docker pull mongo:8.0 (Vui lòng đổi sang phiên bản thực tế)
    • docker pull redis:7.4 (Vui lòng đổi sang phiên bản thực tế)
    • docker pull ghcr.io/ayaka-notes/texlive-full:2024.1 (Vui lòng đổi sang phiên bản thực tế)
  • Với mỗi image đã pull, bạn cần xuất chúng ra tệp .tar. Ví dụ: docker save ghcr.io/ayaka-notes/overleaf-pro:6.3.0 > overleaf-pro:6.3.0.tar
  • Sử dụng phương thức bạn ưa thích, chuyển các tệp .tar từ máy có kết nối internet sang máy chủ ngoại tuyến/air-gapped
  • Với mỗi tệp .tar, dùng lệnh docker load để nạp image từ tệp .tar. Ví dụ: docker load < overleaf-pro:6.3.0.tar
  • Cuối cùng, chạy lệnh docker images để xem/xác nhận rằng việc nạp image đã thành công và các image đã sẵn sàng
Theo mặc định, khi bạn chạy lệnh bin/up, Toolkit sẽ cố gắng tự động pull từng TeX Live image được đặt qua ALL_TEX_LIVE_DOCKER_IMAGES trong config/variables.env. Vì hệ thống của bạn là air-gapped nên việc này sẽ thất bại — bạn có thể ngăn điều này bằng cách dùng SIBLING_CONTAINERS_PULL=false trong config/overleaf.rc.
Lần sửa đổi cuối 5 tháng 10, 2026