Files
pocket-id/docs/docs/configuration/environment-variables.md
Kyle Mendell c12bf2955b docs: add docusaurus docs (#118)
Co-authored-by: Elias Schneider <login@eliasschneider.com>
2025-01-21 18:46:42 +01:00

7.2 KiB

id
id
environment-variables

Environment Variables

Below are all the environment variables supported by Pocket ID. These should be configured in your .env file.

Be cautious when modifying environment variables that are not recommended to change.

Variable Default Value Recommended to change Description
PUBLIC_APP_URL http://localhost yes The URL where you will access the app.
TRUST_PROXY false yes Whether the app is behind a reverse proxy.
MAXMIND_LICENSE_KEY - yes License Key for the GeoLite2 Database. The license key is required to retrieve the geographical location of IP addresses in the audit log. If the key is not provided, IP locations will be marked as "unknown." You can obtain a license key for free here.
PUID and PGID 1000 yes The user and group ID of the user who should run Pocket ID inside the Docker container and owns the files that are mounted with the volume. You can get the PUID and GUID of your user on your host machine by using the command id. For more information see this article.
DB_PROVIDER sqlite no The database provider you want to use. Currently sqlite and postgres are supported.
SQLITE_DB_PATH data/pocket-id.db no The path to the SQLite database. This gets ignored if you didn't set DB_PROVIDER to sqlite.
POSTGRES_CONNECTION_STRING - no The connection string to your Postgres database. This gets ignored if you didn't set DB_PROVIDER to postgres. A connection string can look like this: postgresql://user:password@host:5432/pocket-id.
UPLOAD_PATH data/uploads no The path where the uploaded files are stored.
INTERNAL_BACKEND_URL http://localhost:8080 no The URL where the backend is accessible.
GEOLITE_DB_PATH data/GeoLite2-City.mmdb no The path where the GeoLite2 database should be stored.
CADDY_PORT 80 no The port on which Caddy should listen. Caddy is only active inside the Docker container. If you want to change the exposed port of the container then you sould change this variable.
PORT 3000 no The port on which the frontend should listen.
BACKEND_PORT 8080 no The port on which the backend should listen