Overleaf docs
Plans and pricingTemplatesUser docsGo to Overleaf
On-premises
On-premises
  • Welcome
    • Server Pro vs. Community Edition
  • Release notes
    • Release notes 5.x.x
      • Doc version recovery
    • Release notes 4.x.x
    • Release notes 3.x.x
      • Full project history migration
    • Release notes 2.x.x
    • Release notes 1.x.x
    • Release notes 0.x.x
  • Getting started
    • Before you start
    • Requirements
      • Skills needed
      • Hardware requirements
      • Software requirements
    • Microservices
    • Server Pro infrastructure
    • What is the Overleaf Toolkit?
  • Installation
    • Introduction
    • Using the Toolkit
      • 1: Download the Toolkit
      • 2: Familiarize yourself with the Toolkit
      • 3: Initialize the configuration
      • 4. Choose Community Edition or Server Pro
      • 5. Personalizing your instance
      • 6. Post-installation tasks
    • Air-gapped/offline deployments
    • Upgrading TeX Live
  • Configuration
    • Overleaf Toolkit
      • Files and locations
      • Toolkit settings
      • Environment variables
      • Server Pro-only configuration
        • LDAP
        • SAML 2.0
        • Sandboxed Compiles
        • Git integration
        • Templates
        • Adding LaTeX user help
      • Logging
      • TLS proxy
      • Branding
      • Localization
      • Email delivery
      • Redis
      • S3
  • Maintenance
    • docker-compose.yml to Toolkit migration
    • Upgrading your deployment
    • Data and backups
      • Exporting projects
    • Extending TeX Live
    • Horizontal scaling
    • S3 migration
    • Updating MongoDB
  • User and project management
    • User management
      • Username migration
    • Understanding license usage
    • Project management
  • Support
    • Project limits
    • Troubleshooting
    • Getting help
    • Support guides
      • Using templates as an individual
    • Overleaf user docs
Powered by GitBook
LogoLogo

Discover Overleaf

  • Home
  • Features

Solutions

  • Plans and pricing
  • For universities
  • For business
  • For government

Resources

  • Templates
  • User docs and LaTeX learning
  • Blog

© Overleaf

On this page
  • Persistent Data
  • Data Directories
  • File Permissions
  • Configuration file location
  • The overleaf.rc file
  • The variables.env file
  • The version file
  • The docker-compose.override.yml file

Was this helpful?

Export as PDF
  1. Configuration
  2. Overleaf Toolkit

Files and locations

This page describes the configuration files that are used by the Toolkit to configure your on-premises deployment of Overleaf.

Persistent Data

The Overleaf Toolkit needs to store persistent data, such as the files required to compile LaTeX projects, and the contents of the MongoDB database. This is achieved by mounting a few directories from the host machine into the Docker containers, and writing the data to those directories.

Data Directories

The sharelatex container requires a directory in which to store data relating to LaTeX compiles. This directory is set with the OVERLEAF_DATA_PATH variable in config/overleaf.rc.

The mongo container, if it is enabled, requires a directory in which to store it's database files, and the same is true of the redis container. These directories can also be configured in config/overleaf.rc.

File Permissions

Because Docker runs as root, the data directories will end up being owned by the root user, even if the Toolkit is being used by a non-root user. This is not a problem, but is worth being aware of, if you intend to alter the persistent data from outside of the containers.

Configuration file location

All user-owned configuration files are found in the config/ directory.

This directory is excluded from the git revision control system, so it will not be changed by updating the Toolkit code. The Toolkit will not change any data in the config/ directory without your permission.

Changes to the configuration files will not be automatically applied to existing containers, even if the container is stopped and restarted (with bin/stop and bin/start). To apply the changes, run bin/up, and behind the scenes, docker compose will automatically apply the configuration changes to a new container. (Or, run bin/up -d, if you prefer to not attach to the Docker logs.)

The overleaf.rc file

The config/overleaf.rc file contains the most important top level configuration settings used by the Toolkit. It contains statements that set variables, in the format VARIABLE_NAME=value.

To see a breakdown of all available configuration options see our settings section.

The variables.env file

The config/variables.env file contains environment variables that are loaded into the sharelatex container, and used to configure the Overleaf microservices. These include the name of the application, as displayed in the header of the web interface, settings for sending emails, and other premium settings such as SSO for use with Server Pro.

The version file

The config/version file contains the version number of the Docker image that will be used to create the running instance of your Overleaf server.

Changes to these configuration files will not be automatically applied to existing containers, even if the container is stopped and restarted (with bin/stop and bin/start).

To apply your changes, run bin/up, and the Toolkit will automatically create a new container for you with configuration changes applied.

The docker-compose.override.yml file

If present, the config/docker-compose.override.yml file will be included in the invocation to docker compose. This is useful for overriding configuration specific to Docker compose.

PreviousOverleaf ToolkitNextToolkit settings

Last updated 3 months ago

Was this helpful?

To see a breakdown of all available environment variables see the section.

See the for more details.

Environment variables
docker-compose documentation