ghcr.io mungkin tidak selalu dapat dijangkau untuk menarik image ayakaleaf-pro dan TeX Live yang diperlukan. Ini bukan masalah, karena Docker menyediakan alat untuk mengekspor dan mengimpor image yang akan membantu Anda melakukan deployment offline/air-gapped.
Secara garis besar, Anda akan mengunduh image yang diperlukan di perangkat yang terhubung ke internet, mengekspornya ke perangkat portabel (atau memindahkannya menggunakan SCP/Rsync), lalu mengimpornya di server air-gapped.
Untuk melakukannya, Anda perlu menyelesaikan langkah-langkah berikut:
- Tarik semua image yang diperlukan (
overleaf-pro,git-bridge,mongo,redis+ image TeX Live yang diperlukan untuk digunakan dengan Sandboxed Compiles) di mesin yang terhubung ke internetdocker pull ghcr.io/ayaka-notes/overleaf-pro:6.3.0docker pull ghcr.io/ayaka-notes/overleaf-pro/git-bridge:6.3.0(tag harus sama denganoverleaf-pro)docker pull mongo:8.0(Silakan ganti dengan versi sebenarnya)docker pull redis:7.4(Silakan ganti dengan versi sebenarnya)docker pull ghcr.io/ayaka-notes/texlive-full:2024.1(Silakan ganti dengan versi sebenarnya)
- Untuk setiap image yang telah ditarik, Anda kemudian perlu mengekspornya ke file .tar. Misalnya,
docker save ghcr.io/ayaka-notes/overleaf-pro:6.3.0 > overleaf-pro:6.3.0.tar - Dengan metode pilihan Anda, pindahkan file
.tardari mesin yang terhubung ke internet ke server offline/air-gapped - Untuk setiap file .tar, gunakan perintah
docker loaduntuk memuat image dari file .tar. Misalnya,docker load < overleaf-pro:6.3.0.tar - Terakhir, jalankan perintah
docker imagesuntuk melihat/memastikan bahwa image berhasil dimuat dan tersedia
Secara default, saat Anda menjalankan perintah
bin/up, Toolkit akan mencoba menarik secara otomatis setiap image TeX Live yang diatur melalui ALL_TEX_LIVE_DOCKER_IMAGES di config/variables.env. Karena deployment Anda bersifat air-gapped, hal ini akan gagal — Anda dapat mencegahnya dengan menggunakan SIBLING_CONTAINERS_PULL=false di config/overleaf.rc.
