sablier
Stop unused services and start them on demand
NOTE
When Sablier is enabled, it will configure Traefik to use the file provider instead of the default docker provider. This is required because Quadlet removes containers when they are stopped, so Traefik can no longer discover them through the docker provider.
Example
{
nps.stacks.sablier = {
enable = true;
settings = {
sessions.default-duration = "10m";
};
};
}Stack Options
nps.stacks.sablier.defaultStrategy
The default strategy that the sablier middlewares will use.
For details see
nps.stacks.sablier.enable
Whether to enable sablier.
nps.stacks.sablier.settings
Configuration settings for Sablier.
For details see https://sablierapp.dev/tutorials/configuration/#configuration-file.
Container Extension
Sablier adds the sablier container option to the existing services.podman.containers.<name> options. Enabling it for a container opts it into on-demand scaling and applies the matching Sablier middleware in Traefik.
By default a container gets assigned to a group named after its stack (config.stack). Containers in the same group are started together. You can set a custom group to group containers from different stacks.
Example:
{
nps.stacks.sablier.enable = true;
nps.stacks.streaming.containers.jellyfin.sablier = {
enable = true;
# Optional: group containers across stacks, defaults to the container's stack name
# group = "media";
};
}Additional Sablier settings (e.g. idleReplicas) are forwarded as X-Sablier labels on the systemd unit. For details see https://sablierapp.dev/reference/labels/
services.podman.containers.<name>.sablier
Sablier labels for the container. Must use the systemd style label names. The labels will be provided in the [X-Sablier] section of the unit file for the container.
open submodule of attribute set of string
{ }
services.podman.containers.<name>.sablier.enable
Whether to enable Sablier integration.
services.podman.containers.<name>.sablier.group
Group the container belongs to.
For details see https://sablierapp.dev/concepts/groups/
Container Aliases
nps.stacks.sablier.containers.sablier
Alias of {option}services.podman.containers.sablier.
