Skip to main content

Configuration

Set Photoly options with environment variables. Put them in .env. The file .env.example in the repository is the full template.

Core​

VariablePurpose
POSTGRES_ADMIN_PASSWORD, POSTGRES_MIGRATION_PASSWORD, POSTGRES_APP_PASSWORDThree separate database passwords.
ADMIN_EMAIL, ADMIN_PASSWORDAdministrator account seeded on first start.
PUBLIC_BASE_URLExternally reachable API URL used for share links.
TIMEZONEFallback time zone. Used when a capture time has no offset or location.
MAX_CONTENT_LENGTHMaximum size of one upload request. Default: 600 MiB.

Uploads and media​

See Upload operations and Media tools operations.

VariableDefault
UPLOAD_ZIP_MAX_BYTES50 GB expanded ZIP content
UPLOAD_DISK_RESERVE_BYTES512 MiB free disk reserve
UPLOAD_TEMP_HOURS24
UPLOAD_HISTORY_DAYS30
ONLINE_DOWNLOAD_MAX_BYTES52,428,800
ONLINE_DOWNLOAD_CONNECT_TIMEOUT / ONLINE_DOWNLOAD_TIMEOUT5 / 60 seconds
MEDIA_PROCESS_TIMEOUT60 seconds

Storage​

See Storage deployment.

VariablePurpose
STORAGE_SECRET_KEYEncrypts saved S3, WebDAV and SMB credentials. If you lose or change it, saved credentials become unreadable.
STORAGE_CACHE_TTLTime before unused files from remote storage leave the local cache. Default: 24h. 0 keeps them.
STORAGE_SCAN_INTERVALLocal scan interval. Default: 60s. Minimum: 60 seconds.
STORAGE_LOCAL_ROOTSJSON list of allowed external local roots. Empty means none.
STORAGE_WEBDAV_ALLOWED_HOSTSExact origins of private or Docker WebDAV servers.
STORAGE_WEBDAV_CA_FILEPEM CA bundle for private HTTPS.
STORAGE_SMB_ALLOWED_HOSTSComma-separated SMB servers that may use private networks (TCP 445).