White paper with black drawings and text

Portainer App Templates for LinuxServer.io Docker containers

These Portainer App Templates can be used to easily deploy LinuxServer.io Docker containers with predefined settings.

The templates are based on data provided by the LinuxServer.io GitHub repositories.

Please keep the following in mind.

  • The templates are not supported by LinuxServer.io
  • The templates are being generated so I cannot accept requests to add templates

Prerequisites

  • A server with Docker installed
  • Portainer installed

Install the templates

Application list

All applications on https://fleet.linuxserver.io/ are available as a template. At the time of writing, there are about 140+ applications in the LinuxServer.io fleet.

How to use the templates

As an example we will have a look at the template for Sonarr.

Go to App Templates and select Sonarr.

Information

Before deploying the container, make sure that the volume host directories exist. You can copy/paste the information from Portainer and create the directories if needed.

Instead of using the command line, you can of course also create the directories using your favorite file manager.

mkdir -p /volume1/docker/sonarr/config
mkdir -p /volume1/docker/sonarr/tv
mkdir -p /volume1/docker/sonarr/downloads

Configuration

Review the settings for the Configuration. If needed, adjust the Process User ID (PUID), Process Group ID (PGID), Timezone (TZ) and other configuration variables. More information on PUID and PGID here.

Advanced options

Go to the Advanced options by clicking “+ Show advanced options” and review the settings for Port and Volume mappings.

Deploy the container

If you are satisfied with the settings and the volume host directories are created, you can deploy the container by clicking “Deploy the container” in the Actions section at the bottom.

If everything goes as planned, you will see a message “Container successfully created” in the upper right corner of your browser.

Changes to the LinuxServer.io repository data

Because I am using a Synology NAS and for my own convenience, I made some minor changes to the LinuxServer.io data that is used for the templates.

Volume host directories

Volume host directory information of LinuxServer.io is rewritten so that each individual volume path in the container will map to the following directory on the host.

/volume1/docker/{{ project_name }}/{{ volume_path}}

The default Synology Docker shared folder /volume1/docker is used as the base directory. You can change the directory or keep it and use a symbolic link to point to another location.

PUID and PGID

The default Synology admin user is used so the Process User ID (PUID) is 1024 and Process Group ID (PGID) is 100. More information on PUID and PGID here.

Timezone

Timezone (TZ) is set to Europe/Amsterdam.

Custom README

If the application has a so called “Custom README” and needs special attention, you will see the following template description.

This container needs special attention. Please check https://hub.docker.com/r/linuxserver/{{ project_name }} for details.

If you follow the link you will find more information about how to use the container.

Report issues

If you find a problem, you can submit it on GitHub. I will then look at it as soon as possible.

Considerations

  • With the default volume folder structure provided by LinuxServer.io you cannot use hard links. More information here.
  • The scripts are updated on a daily basis.

Credits

I would like to give a big thanks to LinuxServer.io for all their hard work! Without them this would not be possible.