Skip to content

Configuration Overview

Environment Variables

Plume allows customization through configuration. You can configure Plume in a few different ways. The simplest and recommended way to configure Plume is through environment variables. You can find a list of environment variables and their function in the Environment Variables documentation.

Plume Compose

When using the Plume Compose installation method environment variables should be defined in the environment.d/plume.env file.

dotenv
SITE_TITLE="My Amazing Blog"
TIMEZONE="America/Phoenix"

IMPORTANT

After modifying environment.d/plume.env you must restart your containers (i.e. docker compose up -d) for the changes to apply.

Docker Compose

For a manual Docker Compose installation, you may define environment variables with the environment attribute in your docker-compose.yaml file.

yaml
services:

  plume:
    image: phlak/plume:<version>
    environment: 
      SITE_TITLE: My Amazing Blog
      TIMEZONE: America/Phoenix
    ports:
      - <host_port>:80
    volumes:
      - ./data:/data
    restart: unless-stopped

IMPORTANT

After modifying your docker-compose.yaml file you must restart your containers (i.e. docker compose up -d) for the changes to apply.

Docker Run

You may pass environment variables to the docker run command via the --env flag. Multiple environment variables can be set by passing the --env flag multiple times for each option.

console
docker run --detach --publish 8080:80 --volume ./data:/data \
    --env SITE_TITLE="My Amazing Blog" --env TIMEZONE="America/Phoenix" \
    phlak/plume:latest

Custom JavaScript and CSS

Arbitrary code like CSS & JavaScript may be included in the HTML output of your site through the customizations.html file. This is particularly useful for including analytics tracking code from Google Analytics, Matomo Analytics, Umami Analytics or other similar analytics service.

To inject your customization into your page, create a file named customizations.html in the data directory and place your code into this file.

text
/path/to/plume
├── data
│   ├── [other files and folders]
│   └── customizations.html
└── docker-compose.yaml
html
<!-- Put your custom code here -->