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

# Air-gapped/offline deployments

> Deploy Ayakaleaf Pro offline by exporting, transferring, and loading Docker images.

In general, we do not recommend deploying Ayakaleaf Pro in an offline environment, as many of its features, such as GitHub Sync and Zotero integration, require an internet connection.

If you want to work offline, it may not always be possible to reach the `ghcr.io` registry to pull the required `ayakaleaf-pro` and TeX Live images. This is not a problem, as Docker provides tooling for exporting and importing images that will help you with an offline/air-gapped deployment.

At a high level, you'll download the required images on a device with internet connectivity, export them to a portable device (or transfer them using SCP/Rsync), and import them on the air-gapped server.

To do this, you'll need to complete the following steps:

* Pull all the required images ( `overleaf-pro`, `git-bridge`, `mongo`, `redis` + any required [TeX Live images](https://docs.overleaf.com/on-premises/configuration/overleaf-toolkit/server-pro-only-configuration/sandboxed-compiles#available-tex-live-images) for use with [Sandboxed Compiles](https://docs.overleaf.com/on-premises/configuration/overleaf-toolkit/server-pro-only-configuration/sandboxed-compiles)) on a machine with internet connectivity
  * `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 must be the same as `overleaf-pro`)
  * `docker pull mongo:8.0` (Please change to real version)
  * `docker pull redis:7.4` (Please change to real version)
  * `docker pull ghcr.io/ayaka-notes/texlive-full:2024.1` (Please change to real version)
* For **each** of the pulled images, you'll need to then export them to a .tar file. For example, `docker save ghcr.io/ayaka-notes/overleaf-pro:6.3.0 > overleaf-pro:6.3.0.tar`
* Using your preferred method, transfer the `.tar` files from your internet-connected machine to the offline/air-gapped server
* For each of the .tar files, use the `docker load` command to load the image from the .tar file. For example, `docker load < overleaf-pro:6.3.0.tar`
* Finally, run the `docker images` command to view/confirm the loading of images was successful and that they are available

<Danger>
  By default, when you run the `bin/up` command, the Toolkit will attempt to automatically pull each of the TeX Live images set via `ALL_TEX_LIVE_DOCKER_IMAGES` in `config/variables.env`. As your deployment is air-gapped this will fail -- you can stop this by using `SIBLING_CONTAINERS_PULL=false` in `config/overleaf.rc`.
</Danger>


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