5.6 KiB
Portainer Templates
A compiled list of 400+ ready to go Portainer App templates
TL;DR Under Settings → App Templates in your Portainer GUI, paste this URL:
https://raw.githubusercontent.com/Lissy93/portainer-templates/main/templates.json
Intro
In Portainer, App Templates enable you to easily deploy a container with a predetermined configuration, while allowing you to customize options through the web UI. Both single containers, and stacks are supported. While Portainer ships with some default templates (see portainer/templates), it's often helpful to have 1-click access to many more apps, without having to constantly switch template sources.
This repo combines app templates from several sources, to create a ready-to-go template file containing all the apps you'll ever need.
Usage
- Log into your Portainer web UI
- Under Settings --> App Templates, update the URL to
https://raw.githubusercontent.com/Lissy93/portainer-templates/main/templates.json
- Now under Home --> App Templates, you should see all apps. Click one to deploy.
Alternatively, when you start Portainer, you can append the --templates flag pointing to the templates URL.
Self-Hosting
git clone https://github.com/lissy93/portainer-templates.git portainer-templates
cd portainer-templates
docker build -t portainer-templates .
docker run -d -p "8080:80" portainer-templates
Your templates file will then be served up, at: http://docker-host:8080/templates.json
Or, to mount the templates.json file to your container, so that you can make changes to it, and have them show up within Portainer
docker run -d -p "8080:80" -v "${PWD}/templates.json:/usr/share/nginx/html/templates.json" portainer-templates
Editing
The template.json file is generated using the scripts in lib, using GitHub Actions.
Running the make command will download all listed sources, parse them, and combine them outputting the templates.json file.
Adding a new Source
Just place a link to the source, along with your chosen name in the sources.csv file.
When the action runs, it will download the content, parse it and add it to the final template.
Adding a Template / Template list
Alternatively, place your template file within the external-templates directory, and it will be automatically combined into the main template.json.
Be sure that your template corresponds to Portainer's App Template JSON Format.
Validating Templates
There is a schema defined in Schema.json, which can be used to validate any Portainer template.
Run make validate to ensure your template conforms to Portainer's App Template specification.
Maintaining your own Templates
If you'd prefer to maintain your own templates, while using the templates included here as a base, then fork the repository, and update lissy93 with your GitHub username
Sources
The templates here are composed from the following sources. Full credit to the authors of each
- dnburgess
template.json - qballjos
template.json - SelfhostedPro
template.json - technorabilia
template.json - mikestraney
template.json - xneo1
template.json
Supported Apps and Stacks
Contributing
Disclaimer
License
© Alicia Sykes 2023
Licensed under MIT

Thanks for visiting :)