Create the administrator and a first project
Open http://localhost:8080/launchpad in your Windows browser, create the first administrator account and log in. Then follow 6. Post-installation tasks of the Linux guide, using port8080 in its example URLs.
Verify compilation
A working login page does not prove that the separate compiler containers can access the WSL data directory. Create a blank project and compile thismain.tex with pdfLaTeX:
ctex and the required fonts, such as full, before testing the following with XeLaTeX. Basic does not include them:
docker ps runs; -a also shows stopped containers until cleanup. A compiler container should use that image and a /compile bind mount from the Toolkit’s WSL data directory. Application logs alone are not a substitute for checking the PDF.
Verify persistence
In Ubuntu, from the Toolkit directory:~/ayakaleaf-toolkit/data/ inside Ubuntu. Keep both config/ and data/; uninstalling or unregistering the Ubuntu distribution can delete them.
Keep the instance available
There are three parts to keeping the instance running: Windows stays awake, Docker Desktop runs, and the containers restart with the engine. In Docker Desktop Settings → General, turn on Start Docker Desktop when you sign in to your computer, see Docker Desktop settings. This starts Docker after login, not before login. After a Windows restart, sign in, wait for Docker Desktop to finish starting, open Ubuntu and checkdocker ps and the site.
Docker Desktop’s Resource Saver is separate from Windows sleep. It normally activates only when no containers are running; the running application, MongoDB and Redis prevent that idle condition. On WSL 2 it pauses the Docker engine rather than shutting down the shared WSL VM. Do not manually Pause Docker Desktop while serving users. You do not need to disable Resource Saver merely to keep this stack running; see Docker’s Resource Saver documentation.
The Toolkit services use restart: always. Verify the actual setting in Ubuntu:
always. Once Docker runs, it can restart those existing containers without a new bin/up. A manually stopped container stays stopped until you start it or restart the engine; with always, an engine restart can start it again. See Docker’s restart policy behavior.
For long-running use on AC power, open Windows 11 Settings → System → Power & battery → Screen, sleep & hibernate timeouts (some versions show Power or Screen and sleep). Set the plugged-in sleep timeout to Never and disable automatic hibernation if configured. The display can still turn off. A laptop’s lid action is a separate setting; closing the lid can put it to sleep even with an idle sleep timeout of Never. See Windows power settings.
Do not run
wsl --shutdown as routine cleanup while the site is in use. If a WSL settings change needs it, stop the instance first and plan an interruption. Windows can run the instance continuously with these settings. For a shared service that must survive logouts and unattended reboots, we recommend the Linux guide.
Check recovery after restarting Docker Desktop
After saving work and allowing active compiles to finish, choose Restart Docker Desktop from Docker Desktop’s troubleshooting menu. Wait for the engine, then check in Ubuntu:bin/stop, use bin/start. If Docker is up but a service fails, read its logs rather than recreating the configuration. Windows Update, Docker updates and power loss can still interrupt a 24-hour installation; keep backups and check recovery after planned maintenance.
Daily use
Start Docker Desktop in Windows. Open Ubuntu:bin/start does not apply configuration edits: use bin/up -d after changing config/. Follow Data and backups before upgrading, moving or removing the WSL distribution. Copying live MongoDB files while the database is writing is not a consistent backup.
Keep 127.0.0.1 for local use. Serving other computers also requires an intentional listen address, site URL, Windows firewall/network configuration and HTTPS; changing OVERLEAF_SITE_URL alone does not publish a port.
If something does not work, see Troubleshooting.
