Skip to content

Environment Variables

You can configure Martin using environment variables, but only if the configuration file is not used. The configuration file itself can use environment variables if needed. See configuration section on how to use environment variables with config files. See also SSL configuration section below.

Environment var Description
AWS_LAMBDA_RUNTIME_API If defined, connect to AWS Lambda to handle requests. The regular HTTP server is not used. See Running in AWS Lambda
AWS_CONTAINER_CREDENTIALS_RELATIVE_URI
AWS_CONTAINER_CREDENTIALS_FULL_URI
AWS_CONTAINER_AUTHORIZATION_TOKEN_FILE
AWS_WEB_IDENTITY_TOKEN_FILE
AWS_ROLE_ARN
AWS_ROLE_SESSION_NAME
AWS_ENDPOINT_URL_STS
Injected by ECS, Fargate and EKS to say where the task role's credentials come from. Used for S3-backed PMTiles sources unless pmtiles.profile or the matching pmtiles.* setting is configured. See PMTiles sources

Deprecated environment variables

Reading below environment variables is deprecated and will be removed in a future (semver major) release. See #1052 for further context why this was done. Use the appropriate CLI flags or our yaml interpolation (key: ${ENV_VAR}) support that replaces them.

Environment var
Config File key
Example Description
DATABASE_URL
connection_string
postgres://
postgres@localhost/db
Postgres database connection
DEFAULT_SRID
default_srid
4326 If a PostgreSQL table has a geometry column with SRID=0, use this value instead
PGSSLCERT
ssl_cert
./postgresql.crt A file with a client SSL certificate. docs
PGSSLKEY
ssl_key
./postgresql.key A file with the key for the client SSL certificate. docs
PGSSLROOTCERT
ssl_root_cert
./root.crt A file with trusted root certificate(s). The file should contain a sequence of PEM-formatted CA certificates. docs