├── .gitattributes
├── .github
├── ISSUE_TEMPLATE
│ ├── application-request.md
│ └── bug_report.md
└── workflows
│ └── tests.yml
├── .gitignore
├── Images
├── CREDITS
├── Chevereto.png
├── Dockerfile-Bionic-green.png
├── Dockerfile-Link-green.png
├── Dockerfile-Xenial-green.png
├── Dockerfile-arm64-green.png
├── Dockerfile-armhf-green.png
├── Dockerfile-x86--64-green.png
├── Firefox.png
├── GitLab.png
├── Mumble-logo.png
├── adguard.png
├── airsonic-banner.png
├── airsonic-logo.png
├── apacheweb-banner.png
├── apacheweb-icon.png
├── authelia.png
├── bazarr.png
├── beets-banner.png
├── beets-icon.png
├── bitwarden.png
├── booksonic.png
├── bookstack.png
├── bookstack2.png
├── broadlink.png
├── calibre-web-icon.png
├── cardigann.png
├── changedetection-custom.png
├── chowdown.png
├── code-server.png
├── codiad-icon.png
├── codiad.png
├── cops-icon-old.png
├── cops-icon.png
├── couchpotato-banner.png
├── couchpotato-icon.png
├── dashmachine_logo.png
├── davos.png
├── ddclient-logo.png
├── deemix.png
├── deluge-banner.png
├── deluge-icon.png
├── dokuwiki-icon.png
├── domoticz.png
├── donate.png
├── duck.png
├── duckdns.png
├── duplicati-icon.png
├── emby.png
├── embystat.png
├── filebrowser.png
├── flame.png
├── freeboard.jpg
├── freshrss-banner.png
├── freshrss-icon.png
├── gazee-logo.png
├── grocy_logo.png
├── guacamole.png
├── h5ai-icon.png
├── headphones-banner.png
├── headphones-icon.png
├── heimdall-banner.png
├── heimdall-icon.png
├── homer-dashboard.png
├── homer.png
├── htpcmanager-banner.png
├── htpcmanager-icon.png
├── huginn.png
├── hydra-banner.png
├── hydra-icon.png
├── influxdb_telegraf.jpg
├── invoice_ninja.png
├── jacket-icon.png
├── jackett-banner.png
├── jellyfin.png
├── kodi-banner.png
├── kodi-icon.png
├── lazylibrarian-icon.png
├── le-logo-wide.png
├── letsencrypt.png
├── libresonic (old).png
├── libresonic.png
├── lidarr.png
├── linuxserver-ls-logo.png
├── linuxserver_forum.png
├── linuxserver_medium.png
├── linuxserver_small.png
├── lychee-icon.png
├── maraschino-icon.png
├── maraschino.png
├── mariadb-banner.png
├── mariadb-git.png
├── mariadb-icon.png
├── mcmyadmin-banner.png
├── mcmyadmin-icon.png
├── medusa-icon.png
├── medusa-readme.png
├── minetest-banner.png
├── minetest-icon.png
├── minisatip-icon.png
├── mstream.png
├── musicbrainz-icon.png
├── muximux-icon.png
├── mylar-icon.png
├── mysql-banner.png
├── mysql-git.png
├── mysql-icon.png
├── netbox.png
├── netbox_icon.svg
├── nextcloud-icon.png
├── nginx-banner.png
├── nginx-icon.png
├── node-red-icon.svg
├── nzbget-banner.png
├── nzbget-icon.png
├── nzbmegasearch-banner.png
├── nzbmegasearch-icon.png
├── ogar-icon.png
├── ombi.png
├── openvpn-as-banner.png
├── openvpn-as-icon.png
├── openvpn-as.png
├── organizr-icon.png
├── overseerr-icon.png
├── petio-icon.png
├── photoshow-icon.png
├── pihole.png
├── piwigo-banner.png
├── piwigo-icon.png
├── pixelfed.png
├── plex-banner.png
├── plex-icon.png
├── plexemail-icon.png
├── plexpy-banner.png
├── plexpy-icon.png
├── polipo-icon.png
├── projectsend-logo.png
├── protonmail-bridge.png
├── prowlarr.png
├── proxy_mgr.png
├── pydio-banner.png
├── pydio-icon.png
├── qbittorrent-icon.png
├── quassel-core-banner.png
├── quassel-core-icon.png
├── radarr.png
├── reactiveresume.png
├── resilio.png
├── rutorrent.jpg
├── sabnzbd-banner.png
├── sabnzbd-icon.png
├── shiori-icon.png
├── sickbeard-banner.png
├── sickbeard-icon.png
├── sickchill-banner.png
├── sickchill-icon.png
├── sickgear-banner.png
├── sickgear-icon.png
├── smokeping-banner.png
├── smokeping-icon.png
├── snibox.png
├── snipe-it.png
├── sonarr-banner.png
├── sonarr-icon.png
├── speedtest.png
├── statping.png
├── syncthing-banner.png
├── syncthing-icon.png
├── tailscale.jpg
├── tautulli-banner.png
├── tautulli-icon.png
├── tautulli-logo.png
├── teamspeak-banner.png
├── teamspeak-icon.png
├── tiddlywiki.png
├── transmission-icon.png
├── transmission.png
├── tt-rss-banner.png
├── tt-rss-icon.png
├── tvheadend-big.png
├── ubooquity-banner.png
├── ubooquity-icon.png
├── unifi-banner.png
├── unifi-icon.png
├── watcher-banner.png
├── watcher-icon.png
├── watchtower.png
├── webgrabplus.png
├── whoogle.png
├── wikijs.png
├── ytdlm.png
└── znc-icon.png
├── LICENSE
├── README.md
├── Template
├── Stack
│ ├── activepieces.yml
│ ├── actual.yml
│ ├── adguardhome.yml
│ ├── airsonic.yml
│ ├── ansible-semaphore.yml
│ ├── apprise.yml
│ ├── appsmith.yml
│ ├── appwrite.yml
│ ├── aria2pro.yml
│ ├── audiobookshelf.yml
│ ├── authentik.yml
│ ├── autobrr.yml
│ ├── baikal.yml
│ ├── baserow.yml
│ ├── bazarr.yml
│ ├── beszel.yml
│ ├── blinko.yml
│ ├── bookstack.yml
│ ├── broadlink-manager.yml
│ ├── budibase.yml
│ ├── castopod.yml
│ ├── checkmate.yml
│ ├── chibisafe.yml
│ ├── chiefonboarding.yml
│ ├── codex.yml
│ ├── dashdot.yml
│ ├── dashy.yml
│ ├── dawarich.yml
│ ├── docker-container-stats.yml
│ ├── dockge.yml
│ ├── documize.yml
│ ├── dokemon.yml
│ ├── drawio.yml
│ ├── excalidraw.yml
│ ├── facebox.yml
│ ├── feedcord.yml
│ ├── fenrus.yml
│ ├── ferdiserver.yml
│ ├── ferdium.yml
│ ├── filepizza.yml
│ ├── filestash.yml
│ ├── firefox.yml
│ ├── fireshare.yml
│ ├── flood.yml
│ ├── flowiseai.yml
│ ├── freeboard.yml
│ ├── freescout.yml
│ ├── frigatenvr.yml
│ ├── funkwhale.yml
│ ├── fusion.yml
│ ├── gathio.yml
│ ├── ghost.yml
│ ├── ghostfolio.yml
│ ├── gitlab.yml
│ ├── glances.yml
│ ├── goaccessnpm.yml
│ ├── gokapi.yml
│ ├── grafana.yml
│ ├── grocy.yml
│ ├── hasty-paste.yml
│ ├── hauk.yml
│ ├── hoarder.yml
│ ├── homarr.yml
│ ├── homebridge.yaml
│ ├── homechart.yml
│ ├── homepage.yml
│ ├── ihatemoney.yml
│ ├── immich.yml
│ ├── influxdb2.yml
│ ├── influxdb2_telegraf.yml
│ ├── invidious.yml
│ ├── invoice-ninja.yml
│ ├── iperf.yml
│ ├── jellyseer.yml
│ ├── jump.yml
│ ├── kapowarr.yml
│ ├── kasmworkspaces.yml
│ ├── kavita.yml
│ ├── kiwix.yml
│ ├── koillection.yml
│ ├── lazytainer.yml
│ ├── leantime.yml
│ ├── linkstack.yml
│ ├── littlelink.yml
│ ├── loggifly.yml
│ ├── mailpile.yml
│ ├── markopolis.yml
│ ├── mastodon.yml
│ ├── matomo.yml
│ ├── mautic.yml
│ ├── medama.yml
│ ├── media_server_plex.yml
│ ├── medusa.yml
│ ├── meilisearch.yml
│ ├── meshcentral.yml
│ ├── midarr.yml
│ ├── miniflux.yml
│ ├── monica.yml
│ ├── moodle.yml
│ ├── n8n.yml
│ ├── navidrome.yml
│ ├── neko.yml
│ ├── netalertx.yml
│ ├── netbootxyz.yml
│ ├── nextcloud.yml
│ ├── nexterm.yml
│ ├── nocodb.yml
│ ├── nodered.yml
│ ├── npm.yml
│ ├── nutify.yml
│ ├── ombi.yml
│ ├── openbudgeteer.yml
│ ├── opnform.yml
│ ├── organizr.yml
│ ├── ory-kratos-oathkeeper.yml
│ ├── ory-kratos-standalone.yml
│ ├── overseerr.yml
│ ├── owncloud.yml
│ ├── petio.yml
│ ├── photoprism.yml
│ ├── pinchflat.yml
│ ├── pingvin.yml
│ ├── plane.yml
│ ├── posteio.yml
│ ├── proxitok.yml
│ ├── pve-exporter.yml
│ ├── readarr.yml
│ ├── remotely.yml
│ ├── renovate.yml
│ ├── romm.env
│ ├── romm.yml
│ ├── rport.yml
│ ├── rr_mtm.yml
│ ├── rustdesk.yml
│ ├── shaarli.yml
│ ├── shiori.yml
│ ├── signal.yml
│ ├── silverstripe.yml
│ ├── snibox.yml
│ ├── snippetbox.yml
│ ├── speedtest-tracker.yml
│ ├── stirling-pdf.yml
│ ├── syncthing.yml
│ ├── tabby.yml
│ ├── tailscale.yml
│ ├── tandoor.yml
│ ├── tdarr.yml
│ ├── teleport.yml
│ ├── teleportenv.file
│ ├── timetagger.yml
│ ├── tinymediamanager.yml
│ ├── tooljet.yml
│ ├── traggo.yml
│ ├── trudesk.yml
│ ├── tubearchivist.yml
│ ├── umami.yml
│ ├── unpackerr.yml
│ ├── upsnap.yml
│ ├── uptimekuma.yml
│ ├── vikunja.yml
│ ├── vpn_download.yml
│ ├── wallabag.yml
│ ├── watchrarr.yml
│ ├── webcheck.yml
│ ├── webtrees.yml
│ ├── wger.yml
│ ├── whisparr.yml
│ ├── wordpress.yml
│ ├── xwiki.yml
│ └── your_spotify.yml
├── template.json
└── template3.json
├── details.md
└── package.json
/.gitattributes:
--------------------------------------------------------------------------------
1 | # Auto detect text files and perform LF normalization
2 | * text=auto
3 |
--------------------------------------------------------------------------------
/.github/ISSUE_TEMPLATE/application-request.md:
--------------------------------------------------------------------------------
1 | ---
2 | name: Application Request
3 | about: Request new applications using this template.
4 | title: "[APP REQUEST]: "
5 | labels: App Request
6 | assignees: ''
7 |
8 | ---
9 |
10 | ### Dockerhub Link: ###
11 | *replace with dockerhub link*
12 |
13 | ### Description ###
14 | *replace with description*
15 |
16 | ### Separate Database? ###
17 | *does this require a separate database in order to function?*
18 |
19 | ### Fill this out as best as you can. Documentation about these can be found here: https://www.portainer.io/documentation/how-to-use-templates/
20 |
21 | ```json
22 | {
23 | "version": "2",
24 | "templates": [
25 | {
26 | "categories": [
27 | "Music"
28 | ],
29 | "description": "Airsonic is a free, web-based media streamer, providing ubiqutious access to your music. Use it to share your music with friends, or to listen to your own music while at work. You can stream to multiple players simultaneously, for instance to one player in your kitchen and another in your living room.",
30 | "env": [
31 | {
32 | "default": "1000",
33 | "label": "PUID",
34 | "name": "PUID"
35 | },
36 | {
37 | "default": "100",
38 | "label": "PGID",
39 | "name": "PGID"
40 | },
41 | {
42 | "label": "CONTEXT_PATH",
43 | "name": "CONTEXT_PATH",
44 | "set": "airsonic"
45 | },
46 | {
47 | "label": "JAVA_OPTS",
48 | "name": "JAVA_OPTS",
49 | "set": "-Xms256m -Xmx512m"
50 | }
51 | ],
52 | "image": "linuxserver/airsonic:latest",
53 | "logo": "https://raw.githubusercontent.com/Qballjos/portainer_templates/master/Images/airsonic-logo.png",
54 | "name": "airsonic",
55 | "platform": "linux",
56 | "ports": [
57 | "4040:4040/tcp"
58 | ],
59 | "restart_policy": "unless-stopped",
60 | "title": "Airsonic",
61 | "type": 1,
62 | "volumes": [
63 | {
64 | "bind": "/portainer/Music",
65 | "container": "/music"
66 | },
67 | {
68 | "bind": "/portainer/Files/AppData/Airsonic/Playlists",
69 | "container": "/playlists"
70 | },
71 | {
72 | "bind": "/portainer/Podcasts",
73 | "container": "/podcasts"
74 | },
75 | {
76 | "bind": "/portainer/Files/AppData/Airsonic/Media",
77 | "container": "/media"
78 | },
79 | {
80 | "bind": "/portainer/Files/AppData/Config/Airsonic/",
81 | "container": "/config"
82 | }
83 | ]
84 | },
85 | ```
--------------------------------------------------------------------------------
/.github/ISSUE_TEMPLATE/bug_report.md:
--------------------------------------------------------------------------------
1 | ---
2 | name: Bug report
3 | about: Create a report to help us improve
4 | title: "[BUG]"
5 | labels: bug
6 | assignees: ''
7 |
8 | ---
9 |
10 | **Describe the bug**
11 | A clear and concise description of what the bug is.
12 |
13 | **To Reproduce**
14 | Steps to reproduce the behavior:
15 | 1. Go to '...'
16 | 2. Click on '....'
17 | 3. Scroll down to '....'
18 | 4. See error
19 |
20 | **Expected behavior**
21 | A clear and concise description of what you expected to happen.
22 |
23 | **Screenshots**
24 | If applicable, add screenshots to help explain your problem.
25 |
26 | **Portainer Logs**
27 | Paste logs here
28 |
--------------------------------------------------------------------------------
/.github/workflows/tests.yml:
--------------------------------------------------------------------------------
1 | name: tests
2 | on: [push, pull_request]
3 |
4 | jobs:
5 | test:
6 | runs-on: ubuntu-latest
7 | steps:
8 | - uses: actions/checkout@v2
9 | - uses: actions/setup-node@v1
10 | with:
11 | node-version: '14.x'
12 | - run: npm install
13 | - run: npm test
14 |
--------------------------------------------------------------------------------
/.gitignore:
--------------------------------------------------------------------------------
1 | /node_modules
2 | /package-lock.json
3 | .DS_Store
4 |
--------------------------------------------------------------------------------
/Images/CREDITS:
--------------------------------------------------------------------------------
1 | plex-icon.png is grabbed from https://github.com/binhex/docker-templates
2 |
3 | Images Not mentioned here is grabbed from respective's softwares webpage.
4 |
--------------------------------------------------------------------------------
/Images/Chevereto.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/xneo1/portainer_templates/c84a60c00729c8bc34c3d25df283804556731f85/Images/Chevereto.png
--------------------------------------------------------------------------------
/Images/Dockerfile-Bionic-green.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/xneo1/portainer_templates/c84a60c00729c8bc34c3d25df283804556731f85/Images/Dockerfile-Bionic-green.png
--------------------------------------------------------------------------------
/Images/Dockerfile-Link-green.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/xneo1/portainer_templates/c84a60c00729c8bc34c3d25df283804556731f85/Images/Dockerfile-Link-green.png
--------------------------------------------------------------------------------
/Images/Dockerfile-Xenial-green.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/xneo1/portainer_templates/c84a60c00729c8bc34c3d25df283804556731f85/Images/Dockerfile-Xenial-green.png
--------------------------------------------------------------------------------
/Images/Dockerfile-arm64-green.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/xneo1/portainer_templates/c84a60c00729c8bc34c3d25df283804556731f85/Images/Dockerfile-arm64-green.png
--------------------------------------------------------------------------------
/Images/Dockerfile-armhf-green.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/xneo1/portainer_templates/c84a60c00729c8bc34c3d25df283804556731f85/Images/Dockerfile-armhf-green.png
--------------------------------------------------------------------------------
/Images/Dockerfile-x86--64-green.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/xneo1/portainer_templates/c84a60c00729c8bc34c3d25df283804556731f85/Images/Dockerfile-x86--64-green.png
--------------------------------------------------------------------------------
/Images/Firefox.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/xneo1/portainer_templates/c84a60c00729c8bc34c3d25df283804556731f85/Images/Firefox.png
--------------------------------------------------------------------------------
/Images/GitLab.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/xneo1/portainer_templates/c84a60c00729c8bc34c3d25df283804556731f85/Images/GitLab.png
--------------------------------------------------------------------------------
/Images/Mumble-logo.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/xneo1/portainer_templates/c84a60c00729c8bc34c3d25df283804556731f85/Images/Mumble-logo.png
--------------------------------------------------------------------------------
/Images/adguard.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/xneo1/portainer_templates/c84a60c00729c8bc34c3d25df283804556731f85/Images/adguard.png
--------------------------------------------------------------------------------
/Images/airsonic-banner.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/xneo1/portainer_templates/c84a60c00729c8bc34c3d25df283804556731f85/Images/airsonic-banner.png
--------------------------------------------------------------------------------
/Images/airsonic-logo.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/xneo1/portainer_templates/c84a60c00729c8bc34c3d25df283804556731f85/Images/airsonic-logo.png
--------------------------------------------------------------------------------
/Images/apacheweb-banner.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/xneo1/portainer_templates/c84a60c00729c8bc34c3d25df283804556731f85/Images/apacheweb-banner.png
--------------------------------------------------------------------------------
/Images/apacheweb-icon.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/xneo1/portainer_templates/c84a60c00729c8bc34c3d25df283804556731f85/Images/apacheweb-icon.png
--------------------------------------------------------------------------------
/Images/authelia.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/xneo1/portainer_templates/c84a60c00729c8bc34c3d25df283804556731f85/Images/authelia.png
--------------------------------------------------------------------------------
/Images/bazarr.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/xneo1/portainer_templates/c84a60c00729c8bc34c3d25df283804556731f85/Images/bazarr.png
--------------------------------------------------------------------------------
/Images/beets-banner.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/xneo1/portainer_templates/c84a60c00729c8bc34c3d25df283804556731f85/Images/beets-banner.png
--------------------------------------------------------------------------------
/Images/beets-icon.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/xneo1/portainer_templates/c84a60c00729c8bc34c3d25df283804556731f85/Images/beets-icon.png
--------------------------------------------------------------------------------
/Images/bitwarden.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/xneo1/portainer_templates/c84a60c00729c8bc34c3d25df283804556731f85/Images/bitwarden.png
--------------------------------------------------------------------------------
/Images/booksonic.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/xneo1/portainer_templates/c84a60c00729c8bc34c3d25df283804556731f85/Images/booksonic.png
--------------------------------------------------------------------------------
/Images/bookstack.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/xneo1/portainer_templates/c84a60c00729c8bc34c3d25df283804556731f85/Images/bookstack.png
--------------------------------------------------------------------------------
/Images/bookstack2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/xneo1/portainer_templates/c84a60c00729c8bc34c3d25df283804556731f85/Images/bookstack2.png
--------------------------------------------------------------------------------
/Images/broadlink.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/xneo1/portainer_templates/c84a60c00729c8bc34c3d25df283804556731f85/Images/broadlink.png
--------------------------------------------------------------------------------
/Images/calibre-web-icon.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/xneo1/portainer_templates/c84a60c00729c8bc34c3d25df283804556731f85/Images/calibre-web-icon.png
--------------------------------------------------------------------------------
/Images/cardigann.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/xneo1/portainer_templates/c84a60c00729c8bc34c3d25df283804556731f85/Images/cardigann.png
--------------------------------------------------------------------------------
/Images/changedetection-custom.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/xneo1/portainer_templates/c84a60c00729c8bc34c3d25df283804556731f85/Images/changedetection-custom.png
--------------------------------------------------------------------------------
/Images/chowdown.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/xneo1/portainer_templates/c84a60c00729c8bc34c3d25df283804556731f85/Images/chowdown.png
--------------------------------------------------------------------------------
/Images/code-server.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/xneo1/portainer_templates/c84a60c00729c8bc34c3d25df283804556731f85/Images/code-server.png
--------------------------------------------------------------------------------
/Images/codiad-icon.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/xneo1/portainer_templates/c84a60c00729c8bc34c3d25df283804556731f85/Images/codiad-icon.png
--------------------------------------------------------------------------------
/Images/codiad.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/xneo1/portainer_templates/c84a60c00729c8bc34c3d25df283804556731f85/Images/codiad.png
--------------------------------------------------------------------------------
/Images/cops-icon-old.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/xneo1/portainer_templates/c84a60c00729c8bc34c3d25df283804556731f85/Images/cops-icon-old.png
--------------------------------------------------------------------------------
/Images/cops-icon.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/xneo1/portainer_templates/c84a60c00729c8bc34c3d25df283804556731f85/Images/cops-icon.png
--------------------------------------------------------------------------------
/Images/couchpotato-banner.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/xneo1/portainer_templates/c84a60c00729c8bc34c3d25df283804556731f85/Images/couchpotato-banner.png
--------------------------------------------------------------------------------
/Images/couchpotato-icon.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/xneo1/portainer_templates/c84a60c00729c8bc34c3d25df283804556731f85/Images/couchpotato-icon.png
--------------------------------------------------------------------------------
/Images/dashmachine_logo.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/xneo1/portainer_templates/c84a60c00729c8bc34c3d25df283804556731f85/Images/dashmachine_logo.png
--------------------------------------------------------------------------------
/Images/davos.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/xneo1/portainer_templates/c84a60c00729c8bc34c3d25df283804556731f85/Images/davos.png
--------------------------------------------------------------------------------
/Images/ddclient-logo.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/xneo1/portainer_templates/c84a60c00729c8bc34c3d25df283804556731f85/Images/ddclient-logo.png
--------------------------------------------------------------------------------
/Images/deemix.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/xneo1/portainer_templates/c84a60c00729c8bc34c3d25df283804556731f85/Images/deemix.png
--------------------------------------------------------------------------------
/Images/deluge-banner.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/xneo1/portainer_templates/c84a60c00729c8bc34c3d25df283804556731f85/Images/deluge-banner.png
--------------------------------------------------------------------------------
/Images/deluge-icon.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/xneo1/portainer_templates/c84a60c00729c8bc34c3d25df283804556731f85/Images/deluge-icon.png
--------------------------------------------------------------------------------
/Images/dokuwiki-icon.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/xneo1/portainer_templates/c84a60c00729c8bc34c3d25df283804556731f85/Images/dokuwiki-icon.png
--------------------------------------------------------------------------------
/Images/domoticz.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/xneo1/portainer_templates/c84a60c00729c8bc34c3d25df283804556731f85/Images/domoticz.png
--------------------------------------------------------------------------------
/Images/donate.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/xneo1/portainer_templates/c84a60c00729c8bc34c3d25df283804556731f85/Images/donate.png
--------------------------------------------------------------------------------
/Images/duck.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/xneo1/portainer_templates/c84a60c00729c8bc34c3d25df283804556731f85/Images/duck.png
--------------------------------------------------------------------------------
/Images/duckdns.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/xneo1/portainer_templates/c84a60c00729c8bc34c3d25df283804556731f85/Images/duckdns.png
--------------------------------------------------------------------------------
/Images/duplicati-icon.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/xneo1/portainer_templates/c84a60c00729c8bc34c3d25df283804556731f85/Images/duplicati-icon.png
--------------------------------------------------------------------------------
/Images/emby.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/xneo1/portainer_templates/c84a60c00729c8bc34c3d25df283804556731f85/Images/emby.png
--------------------------------------------------------------------------------
/Images/embystat.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/xneo1/portainer_templates/c84a60c00729c8bc34c3d25df283804556731f85/Images/embystat.png
--------------------------------------------------------------------------------
/Images/filebrowser.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/xneo1/portainer_templates/c84a60c00729c8bc34c3d25df283804556731f85/Images/filebrowser.png
--------------------------------------------------------------------------------
/Images/flame.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/xneo1/portainer_templates/c84a60c00729c8bc34c3d25df283804556731f85/Images/flame.png
--------------------------------------------------------------------------------
/Images/freeboard.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/xneo1/portainer_templates/c84a60c00729c8bc34c3d25df283804556731f85/Images/freeboard.jpg
--------------------------------------------------------------------------------
/Images/freshrss-banner.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/xneo1/portainer_templates/c84a60c00729c8bc34c3d25df283804556731f85/Images/freshrss-banner.png
--------------------------------------------------------------------------------
/Images/freshrss-icon.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/xneo1/portainer_templates/c84a60c00729c8bc34c3d25df283804556731f85/Images/freshrss-icon.png
--------------------------------------------------------------------------------
/Images/gazee-logo.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/xneo1/portainer_templates/c84a60c00729c8bc34c3d25df283804556731f85/Images/gazee-logo.png
--------------------------------------------------------------------------------
/Images/grocy_logo.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/xneo1/portainer_templates/c84a60c00729c8bc34c3d25df283804556731f85/Images/grocy_logo.png
--------------------------------------------------------------------------------
/Images/guacamole.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/xneo1/portainer_templates/c84a60c00729c8bc34c3d25df283804556731f85/Images/guacamole.png
--------------------------------------------------------------------------------
/Images/h5ai-icon.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/xneo1/portainer_templates/c84a60c00729c8bc34c3d25df283804556731f85/Images/h5ai-icon.png
--------------------------------------------------------------------------------
/Images/headphones-banner.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/xneo1/portainer_templates/c84a60c00729c8bc34c3d25df283804556731f85/Images/headphones-banner.png
--------------------------------------------------------------------------------
/Images/headphones-icon.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/xneo1/portainer_templates/c84a60c00729c8bc34c3d25df283804556731f85/Images/headphones-icon.png
--------------------------------------------------------------------------------
/Images/heimdall-banner.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/xneo1/portainer_templates/c84a60c00729c8bc34c3d25df283804556731f85/Images/heimdall-banner.png
--------------------------------------------------------------------------------
/Images/heimdall-icon.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/xneo1/portainer_templates/c84a60c00729c8bc34c3d25df283804556731f85/Images/heimdall-icon.png
--------------------------------------------------------------------------------
/Images/homer-dashboard.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/xneo1/portainer_templates/c84a60c00729c8bc34c3d25df283804556731f85/Images/homer-dashboard.png
--------------------------------------------------------------------------------
/Images/homer.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/xneo1/portainer_templates/c84a60c00729c8bc34c3d25df283804556731f85/Images/homer.png
--------------------------------------------------------------------------------
/Images/htpcmanager-banner.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/xneo1/portainer_templates/c84a60c00729c8bc34c3d25df283804556731f85/Images/htpcmanager-banner.png
--------------------------------------------------------------------------------
/Images/htpcmanager-icon.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/xneo1/portainer_templates/c84a60c00729c8bc34c3d25df283804556731f85/Images/htpcmanager-icon.png
--------------------------------------------------------------------------------
/Images/huginn.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/xneo1/portainer_templates/c84a60c00729c8bc34c3d25df283804556731f85/Images/huginn.png
--------------------------------------------------------------------------------
/Images/hydra-banner.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/xneo1/portainer_templates/c84a60c00729c8bc34c3d25df283804556731f85/Images/hydra-banner.png
--------------------------------------------------------------------------------
/Images/hydra-icon.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/xneo1/portainer_templates/c84a60c00729c8bc34c3d25df283804556731f85/Images/hydra-icon.png
--------------------------------------------------------------------------------
/Images/influxdb_telegraf.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/xneo1/portainer_templates/c84a60c00729c8bc34c3d25df283804556731f85/Images/influxdb_telegraf.jpg
--------------------------------------------------------------------------------
/Images/invoice_ninja.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/xneo1/portainer_templates/c84a60c00729c8bc34c3d25df283804556731f85/Images/invoice_ninja.png
--------------------------------------------------------------------------------
/Images/jacket-icon.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/xneo1/portainer_templates/c84a60c00729c8bc34c3d25df283804556731f85/Images/jacket-icon.png
--------------------------------------------------------------------------------
/Images/jackett-banner.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/xneo1/portainer_templates/c84a60c00729c8bc34c3d25df283804556731f85/Images/jackett-banner.png
--------------------------------------------------------------------------------
/Images/jellyfin.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/xneo1/portainer_templates/c84a60c00729c8bc34c3d25df283804556731f85/Images/jellyfin.png
--------------------------------------------------------------------------------
/Images/kodi-banner.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/xneo1/portainer_templates/c84a60c00729c8bc34c3d25df283804556731f85/Images/kodi-banner.png
--------------------------------------------------------------------------------
/Images/kodi-icon.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/xneo1/portainer_templates/c84a60c00729c8bc34c3d25df283804556731f85/Images/kodi-icon.png
--------------------------------------------------------------------------------
/Images/lazylibrarian-icon.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/xneo1/portainer_templates/c84a60c00729c8bc34c3d25df283804556731f85/Images/lazylibrarian-icon.png
--------------------------------------------------------------------------------
/Images/le-logo-wide.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/xneo1/portainer_templates/c84a60c00729c8bc34c3d25df283804556731f85/Images/le-logo-wide.png
--------------------------------------------------------------------------------
/Images/letsencrypt.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/xneo1/portainer_templates/c84a60c00729c8bc34c3d25df283804556731f85/Images/letsencrypt.png
--------------------------------------------------------------------------------
/Images/libresonic (old).png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/xneo1/portainer_templates/c84a60c00729c8bc34c3d25df283804556731f85/Images/libresonic (old).png
--------------------------------------------------------------------------------
/Images/libresonic.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/xneo1/portainer_templates/c84a60c00729c8bc34c3d25df283804556731f85/Images/libresonic.png
--------------------------------------------------------------------------------
/Images/lidarr.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/xneo1/portainer_templates/c84a60c00729c8bc34c3d25df283804556731f85/Images/lidarr.png
--------------------------------------------------------------------------------
/Images/linuxserver-ls-logo.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/xneo1/portainer_templates/c84a60c00729c8bc34c3d25df283804556731f85/Images/linuxserver-ls-logo.png
--------------------------------------------------------------------------------
/Images/linuxserver_forum.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/xneo1/portainer_templates/c84a60c00729c8bc34c3d25df283804556731f85/Images/linuxserver_forum.png
--------------------------------------------------------------------------------
/Images/linuxserver_medium.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/xneo1/portainer_templates/c84a60c00729c8bc34c3d25df283804556731f85/Images/linuxserver_medium.png
--------------------------------------------------------------------------------
/Images/linuxserver_small.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/xneo1/portainer_templates/c84a60c00729c8bc34c3d25df283804556731f85/Images/linuxserver_small.png
--------------------------------------------------------------------------------
/Images/lychee-icon.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/xneo1/portainer_templates/c84a60c00729c8bc34c3d25df283804556731f85/Images/lychee-icon.png
--------------------------------------------------------------------------------
/Images/maraschino-icon.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/xneo1/portainer_templates/c84a60c00729c8bc34c3d25df283804556731f85/Images/maraschino-icon.png
--------------------------------------------------------------------------------
/Images/maraschino.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/xneo1/portainer_templates/c84a60c00729c8bc34c3d25df283804556731f85/Images/maraschino.png
--------------------------------------------------------------------------------
/Images/mariadb-banner.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/xneo1/portainer_templates/c84a60c00729c8bc34c3d25df283804556731f85/Images/mariadb-banner.png
--------------------------------------------------------------------------------
/Images/mariadb-git.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/xneo1/portainer_templates/c84a60c00729c8bc34c3d25df283804556731f85/Images/mariadb-git.png
--------------------------------------------------------------------------------
/Images/mariadb-icon.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/xneo1/portainer_templates/c84a60c00729c8bc34c3d25df283804556731f85/Images/mariadb-icon.png
--------------------------------------------------------------------------------
/Images/mcmyadmin-banner.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/xneo1/portainer_templates/c84a60c00729c8bc34c3d25df283804556731f85/Images/mcmyadmin-banner.png
--------------------------------------------------------------------------------
/Images/mcmyadmin-icon.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/xneo1/portainer_templates/c84a60c00729c8bc34c3d25df283804556731f85/Images/mcmyadmin-icon.png
--------------------------------------------------------------------------------
/Images/medusa-icon.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/xneo1/portainer_templates/c84a60c00729c8bc34c3d25df283804556731f85/Images/medusa-icon.png
--------------------------------------------------------------------------------
/Images/medusa-readme.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/xneo1/portainer_templates/c84a60c00729c8bc34c3d25df283804556731f85/Images/medusa-readme.png
--------------------------------------------------------------------------------
/Images/minetest-banner.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/xneo1/portainer_templates/c84a60c00729c8bc34c3d25df283804556731f85/Images/minetest-banner.png
--------------------------------------------------------------------------------
/Images/minetest-icon.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/xneo1/portainer_templates/c84a60c00729c8bc34c3d25df283804556731f85/Images/minetest-icon.png
--------------------------------------------------------------------------------
/Images/minisatip-icon.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/xneo1/portainer_templates/c84a60c00729c8bc34c3d25df283804556731f85/Images/minisatip-icon.png
--------------------------------------------------------------------------------
/Images/mstream.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/xneo1/portainer_templates/c84a60c00729c8bc34c3d25df283804556731f85/Images/mstream.png
--------------------------------------------------------------------------------
/Images/musicbrainz-icon.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/xneo1/portainer_templates/c84a60c00729c8bc34c3d25df283804556731f85/Images/musicbrainz-icon.png
--------------------------------------------------------------------------------
/Images/muximux-icon.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/xneo1/portainer_templates/c84a60c00729c8bc34c3d25df283804556731f85/Images/muximux-icon.png
--------------------------------------------------------------------------------
/Images/mylar-icon.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/xneo1/portainer_templates/c84a60c00729c8bc34c3d25df283804556731f85/Images/mylar-icon.png
--------------------------------------------------------------------------------
/Images/mysql-banner.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/xneo1/portainer_templates/c84a60c00729c8bc34c3d25df283804556731f85/Images/mysql-banner.png
--------------------------------------------------------------------------------
/Images/mysql-git.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/xneo1/portainer_templates/c84a60c00729c8bc34c3d25df283804556731f85/Images/mysql-git.png
--------------------------------------------------------------------------------
/Images/mysql-icon.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/xneo1/portainer_templates/c84a60c00729c8bc34c3d25df283804556731f85/Images/mysql-icon.png
--------------------------------------------------------------------------------
/Images/netbox.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/xneo1/portainer_templates/c84a60c00729c8bc34c3d25df283804556731f85/Images/netbox.png
--------------------------------------------------------------------------------
/Images/netbox_icon.svg:
--------------------------------------------------------------------------------
1 |
21 |
--------------------------------------------------------------------------------
/Images/nextcloud-icon.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/xneo1/portainer_templates/c84a60c00729c8bc34c3d25df283804556731f85/Images/nextcloud-icon.png
--------------------------------------------------------------------------------
/Images/nginx-banner.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/xneo1/portainer_templates/c84a60c00729c8bc34c3d25df283804556731f85/Images/nginx-banner.png
--------------------------------------------------------------------------------
/Images/nginx-icon.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/xneo1/portainer_templates/c84a60c00729c8bc34c3d25df283804556731f85/Images/nginx-icon.png
--------------------------------------------------------------------------------
/Images/nzbget-banner.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/xneo1/portainer_templates/c84a60c00729c8bc34c3d25df283804556731f85/Images/nzbget-banner.png
--------------------------------------------------------------------------------
/Images/nzbget-icon.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/xneo1/portainer_templates/c84a60c00729c8bc34c3d25df283804556731f85/Images/nzbget-icon.png
--------------------------------------------------------------------------------
/Images/nzbmegasearch-banner.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/xneo1/portainer_templates/c84a60c00729c8bc34c3d25df283804556731f85/Images/nzbmegasearch-banner.png
--------------------------------------------------------------------------------
/Images/nzbmegasearch-icon.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/xneo1/portainer_templates/c84a60c00729c8bc34c3d25df283804556731f85/Images/nzbmegasearch-icon.png
--------------------------------------------------------------------------------
/Images/ogar-icon.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/xneo1/portainer_templates/c84a60c00729c8bc34c3d25df283804556731f85/Images/ogar-icon.png
--------------------------------------------------------------------------------
/Images/ombi.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/xneo1/portainer_templates/c84a60c00729c8bc34c3d25df283804556731f85/Images/ombi.png
--------------------------------------------------------------------------------
/Images/openvpn-as-banner.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/xneo1/portainer_templates/c84a60c00729c8bc34c3d25df283804556731f85/Images/openvpn-as-banner.png
--------------------------------------------------------------------------------
/Images/openvpn-as-icon.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/xneo1/portainer_templates/c84a60c00729c8bc34c3d25df283804556731f85/Images/openvpn-as-icon.png
--------------------------------------------------------------------------------
/Images/openvpn-as.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/xneo1/portainer_templates/c84a60c00729c8bc34c3d25df283804556731f85/Images/openvpn-as.png
--------------------------------------------------------------------------------
/Images/organizr-icon.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/xneo1/portainer_templates/c84a60c00729c8bc34c3d25df283804556731f85/Images/organizr-icon.png
--------------------------------------------------------------------------------
/Images/overseerr-icon.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/xneo1/portainer_templates/c84a60c00729c8bc34c3d25df283804556731f85/Images/overseerr-icon.png
--------------------------------------------------------------------------------
/Images/petio-icon.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/xneo1/portainer_templates/c84a60c00729c8bc34c3d25df283804556731f85/Images/petio-icon.png
--------------------------------------------------------------------------------
/Images/photoshow-icon.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/xneo1/portainer_templates/c84a60c00729c8bc34c3d25df283804556731f85/Images/photoshow-icon.png
--------------------------------------------------------------------------------
/Images/pihole.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/xneo1/portainer_templates/c84a60c00729c8bc34c3d25df283804556731f85/Images/pihole.png
--------------------------------------------------------------------------------
/Images/piwigo-banner.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/xneo1/portainer_templates/c84a60c00729c8bc34c3d25df283804556731f85/Images/piwigo-banner.png
--------------------------------------------------------------------------------
/Images/piwigo-icon.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/xneo1/portainer_templates/c84a60c00729c8bc34c3d25df283804556731f85/Images/piwigo-icon.png
--------------------------------------------------------------------------------
/Images/pixelfed.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/xneo1/portainer_templates/c84a60c00729c8bc34c3d25df283804556731f85/Images/pixelfed.png
--------------------------------------------------------------------------------
/Images/plex-banner.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/xneo1/portainer_templates/c84a60c00729c8bc34c3d25df283804556731f85/Images/plex-banner.png
--------------------------------------------------------------------------------
/Images/plex-icon.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/xneo1/portainer_templates/c84a60c00729c8bc34c3d25df283804556731f85/Images/plex-icon.png
--------------------------------------------------------------------------------
/Images/plexemail-icon.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/xneo1/portainer_templates/c84a60c00729c8bc34c3d25df283804556731f85/Images/plexemail-icon.png
--------------------------------------------------------------------------------
/Images/plexpy-banner.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/xneo1/portainer_templates/c84a60c00729c8bc34c3d25df283804556731f85/Images/plexpy-banner.png
--------------------------------------------------------------------------------
/Images/plexpy-icon.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/xneo1/portainer_templates/c84a60c00729c8bc34c3d25df283804556731f85/Images/plexpy-icon.png
--------------------------------------------------------------------------------
/Images/polipo-icon.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/xneo1/portainer_templates/c84a60c00729c8bc34c3d25df283804556731f85/Images/polipo-icon.png
--------------------------------------------------------------------------------
/Images/projectsend-logo.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/xneo1/portainer_templates/c84a60c00729c8bc34c3d25df283804556731f85/Images/projectsend-logo.png
--------------------------------------------------------------------------------
/Images/protonmail-bridge.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/xneo1/portainer_templates/c84a60c00729c8bc34c3d25df283804556731f85/Images/protonmail-bridge.png
--------------------------------------------------------------------------------
/Images/prowlarr.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/xneo1/portainer_templates/c84a60c00729c8bc34c3d25df283804556731f85/Images/prowlarr.png
--------------------------------------------------------------------------------
/Images/proxy_mgr.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/xneo1/portainer_templates/c84a60c00729c8bc34c3d25df283804556731f85/Images/proxy_mgr.png
--------------------------------------------------------------------------------
/Images/pydio-banner.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/xneo1/portainer_templates/c84a60c00729c8bc34c3d25df283804556731f85/Images/pydio-banner.png
--------------------------------------------------------------------------------
/Images/pydio-icon.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/xneo1/portainer_templates/c84a60c00729c8bc34c3d25df283804556731f85/Images/pydio-icon.png
--------------------------------------------------------------------------------
/Images/qbittorrent-icon.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/xneo1/portainer_templates/c84a60c00729c8bc34c3d25df283804556731f85/Images/qbittorrent-icon.png
--------------------------------------------------------------------------------
/Images/quassel-core-banner.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/xneo1/portainer_templates/c84a60c00729c8bc34c3d25df283804556731f85/Images/quassel-core-banner.png
--------------------------------------------------------------------------------
/Images/quassel-core-icon.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/xneo1/portainer_templates/c84a60c00729c8bc34c3d25df283804556731f85/Images/quassel-core-icon.png
--------------------------------------------------------------------------------
/Images/radarr.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/xneo1/portainer_templates/c84a60c00729c8bc34c3d25df283804556731f85/Images/radarr.png
--------------------------------------------------------------------------------
/Images/reactiveresume.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/xneo1/portainer_templates/c84a60c00729c8bc34c3d25df283804556731f85/Images/reactiveresume.png
--------------------------------------------------------------------------------
/Images/resilio.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/xneo1/portainer_templates/c84a60c00729c8bc34c3d25df283804556731f85/Images/resilio.png
--------------------------------------------------------------------------------
/Images/rutorrent.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/xneo1/portainer_templates/c84a60c00729c8bc34c3d25df283804556731f85/Images/rutorrent.jpg
--------------------------------------------------------------------------------
/Images/sabnzbd-banner.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/xneo1/portainer_templates/c84a60c00729c8bc34c3d25df283804556731f85/Images/sabnzbd-banner.png
--------------------------------------------------------------------------------
/Images/sabnzbd-icon.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/xneo1/portainer_templates/c84a60c00729c8bc34c3d25df283804556731f85/Images/sabnzbd-icon.png
--------------------------------------------------------------------------------
/Images/shiori-icon.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/xneo1/portainer_templates/c84a60c00729c8bc34c3d25df283804556731f85/Images/shiori-icon.png
--------------------------------------------------------------------------------
/Images/sickbeard-banner.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/xneo1/portainer_templates/c84a60c00729c8bc34c3d25df283804556731f85/Images/sickbeard-banner.png
--------------------------------------------------------------------------------
/Images/sickbeard-icon.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/xneo1/portainer_templates/c84a60c00729c8bc34c3d25df283804556731f85/Images/sickbeard-icon.png
--------------------------------------------------------------------------------
/Images/sickchill-banner.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/xneo1/portainer_templates/c84a60c00729c8bc34c3d25df283804556731f85/Images/sickchill-banner.png
--------------------------------------------------------------------------------
/Images/sickchill-icon.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/xneo1/portainer_templates/c84a60c00729c8bc34c3d25df283804556731f85/Images/sickchill-icon.png
--------------------------------------------------------------------------------
/Images/sickgear-banner.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/xneo1/portainer_templates/c84a60c00729c8bc34c3d25df283804556731f85/Images/sickgear-banner.png
--------------------------------------------------------------------------------
/Images/sickgear-icon.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/xneo1/portainer_templates/c84a60c00729c8bc34c3d25df283804556731f85/Images/sickgear-icon.png
--------------------------------------------------------------------------------
/Images/smokeping-banner.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/xneo1/portainer_templates/c84a60c00729c8bc34c3d25df283804556731f85/Images/smokeping-banner.png
--------------------------------------------------------------------------------
/Images/smokeping-icon.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/xneo1/portainer_templates/c84a60c00729c8bc34c3d25df283804556731f85/Images/smokeping-icon.png
--------------------------------------------------------------------------------
/Images/snibox.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/xneo1/portainer_templates/c84a60c00729c8bc34c3d25df283804556731f85/Images/snibox.png
--------------------------------------------------------------------------------
/Images/snipe-it.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/xneo1/portainer_templates/c84a60c00729c8bc34c3d25df283804556731f85/Images/snipe-it.png
--------------------------------------------------------------------------------
/Images/sonarr-banner.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/xneo1/portainer_templates/c84a60c00729c8bc34c3d25df283804556731f85/Images/sonarr-banner.png
--------------------------------------------------------------------------------
/Images/sonarr-icon.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/xneo1/portainer_templates/c84a60c00729c8bc34c3d25df283804556731f85/Images/sonarr-icon.png
--------------------------------------------------------------------------------
/Images/speedtest.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/xneo1/portainer_templates/c84a60c00729c8bc34c3d25df283804556731f85/Images/speedtest.png
--------------------------------------------------------------------------------
/Images/statping.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/xneo1/portainer_templates/c84a60c00729c8bc34c3d25df283804556731f85/Images/statping.png
--------------------------------------------------------------------------------
/Images/syncthing-banner.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/xneo1/portainer_templates/c84a60c00729c8bc34c3d25df283804556731f85/Images/syncthing-banner.png
--------------------------------------------------------------------------------
/Images/syncthing-icon.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/xneo1/portainer_templates/c84a60c00729c8bc34c3d25df283804556731f85/Images/syncthing-icon.png
--------------------------------------------------------------------------------
/Images/tailscale.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/xneo1/portainer_templates/c84a60c00729c8bc34c3d25df283804556731f85/Images/tailscale.jpg
--------------------------------------------------------------------------------
/Images/tautulli-banner.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/xneo1/portainer_templates/c84a60c00729c8bc34c3d25df283804556731f85/Images/tautulli-banner.png
--------------------------------------------------------------------------------
/Images/tautulli-icon.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/xneo1/portainer_templates/c84a60c00729c8bc34c3d25df283804556731f85/Images/tautulli-icon.png
--------------------------------------------------------------------------------
/Images/tautulli-logo.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/xneo1/portainer_templates/c84a60c00729c8bc34c3d25df283804556731f85/Images/tautulli-logo.png
--------------------------------------------------------------------------------
/Images/teamspeak-banner.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/xneo1/portainer_templates/c84a60c00729c8bc34c3d25df283804556731f85/Images/teamspeak-banner.png
--------------------------------------------------------------------------------
/Images/teamspeak-icon.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/xneo1/portainer_templates/c84a60c00729c8bc34c3d25df283804556731f85/Images/teamspeak-icon.png
--------------------------------------------------------------------------------
/Images/tiddlywiki.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/xneo1/portainer_templates/c84a60c00729c8bc34c3d25df283804556731f85/Images/tiddlywiki.png
--------------------------------------------------------------------------------
/Images/transmission-icon.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/xneo1/portainer_templates/c84a60c00729c8bc34c3d25df283804556731f85/Images/transmission-icon.png
--------------------------------------------------------------------------------
/Images/transmission.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/xneo1/portainer_templates/c84a60c00729c8bc34c3d25df283804556731f85/Images/transmission.png
--------------------------------------------------------------------------------
/Images/tt-rss-banner.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/xneo1/portainer_templates/c84a60c00729c8bc34c3d25df283804556731f85/Images/tt-rss-banner.png
--------------------------------------------------------------------------------
/Images/tt-rss-icon.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/xneo1/portainer_templates/c84a60c00729c8bc34c3d25df283804556731f85/Images/tt-rss-icon.png
--------------------------------------------------------------------------------
/Images/tvheadend-big.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/xneo1/portainer_templates/c84a60c00729c8bc34c3d25df283804556731f85/Images/tvheadend-big.png
--------------------------------------------------------------------------------
/Images/ubooquity-banner.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/xneo1/portainer_templates/c84a60c00729c8bc34c3d25df283804556731f85/Images/ubooquity-banner.png
--------------------------------------------------------------------------------
/Images/ubooquity-icon.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/xneo1/portainer_templates/c84a60c00729c8bc34c3d25df283804556731f85/Images/ubooquity-icon.png
--------------------------------------------------------------------------------
/Images/unifi-banner.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/xneo1/portainer_templates/c84a60c00729c8bc34c3d25df283804556731f85/Images/unifi-banner.png
--------------------------------------------------------------------------------
/Images/unifi-icon.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/xneo1/portainer_templates/c84a60c00729c8bc34c3d25df283804556731f85/Images/unifi-icon.png
--------------------------------------------------------------------------------
/Images/watcher-banner.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/xneo1/portainer_templates/c84a60c00729c8bc34c3d25df283804556731f85/Images/watcher-banner.png
--------------------------------------------------------------------------------
/Images/watcher-icon.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/xneo1/portainer_templates/c84a60c00729c8bc34c3d25df283804556731f85/Images/watcher-icon.png
--------------------------------------------------------------------------------
/Images/watchtower.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/xneo1/portainer_templates/c84a60c00729c8bc34c3d25df283804556731f85/Images/watchtower.png
--------------------------------------------------------------------------------
/Images/webgrabplus.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/xneo1/portainer_templates/c84a60c00729c8bc34c3d25df283804556731f85/Images/webgrabplus.png
--------------------------------------------------------------------------------
/Images/whoogle.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/xneo1/portainer_templates/c84a60c00729c8bc34c3d25df283804556731f85/Images/whoogle.png
--------------------------------------------------------------------------------
/Images/wikijs.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/xneo1/portainer_templates/c84a60c00729c8bc34c3d25df283804556731f85/Images/wikijs.png
--------------------------------------------------------------------------------
/Images/ytdlm.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/xneo1/portainer_templates/c84a60c00729c8bc34c3d25df283804556731f85/Images/ytdlm.png
--------------------------------------------------------------------------------
/Images/znc-icon.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/xneo1/portainer_templates/c84a60c00729c8bc34c3d25df283804556731f85/Images/znc-icon.png
--------------------------------------------------------------------------------
/Template/Stack/activepieces.yml:
--------------------------------------------------------------------------------
1 | services:
2 | activepieces:
3 | image: activepieces/activepieces:0.12.2
4 | container_name: activepieces
5 | restart: unless-stopped
6 | ## Enable the following line if you already use AP_EXECUTION_MODE with SANDBOXED or old activepieces, checking the breaking change documentation for more info.
7 | ## privileged: true
8 | ports:
9 | - 38080:80
10 | depends_on:
11 | - ap-postgres
12 | - ap-redis
13 | environment:
14 | ## It's advisable to consult the documentation and use the tools/deploy.sh to generate the passwords, keys, instead of manually filling them.
15 | - AP_ENGINE_EXECUTABLE_PATH=dist/packages/engine/main.js
16 | ## Random Long Password (Optional for community edition)
17 | - AP_API_KEY=superduperlongranDOMpwd
18 | ## 256 bit encryption key, 32 hex character
19 | - AP_ENCRYPTION_KEY=
20 | ## JWT Secret
21 | - AP_JWT_SECRET=JWT2square_changeme
22 | - AP_ENVIRONMENT=prod
23 | - AP_FRONTEND_URL=http://localhost:38080
24 | - AP_WEBHOOK_TIMEOUT_SECONDS=30
25 | - AP_TRIGGER_DEFAULT_POLL_INTERVAL=5
26 | - AP_POSTGRES_DATABASE=activepieces
27 | - AP_POSTGRES_HOST=postgres
28 | - AP_POSTGRES_PORT=5432
29 | - AP_POSTGRES_USERNAME=postgres
30 | - AP_POSTGRES_PASSWORD=postgresof_changeme
31 | - AP_EXECUTION_MODE=UNSANDBOXED
32 | - AP_REDIS_HOST=redis
33 | - AP_REDIS_PORT=6379
34 | - AP_SANDBOX_RUN_TIME_SECONDS=600
35 | - AP_TELEMETRY_ENABLED=false
36 | - AP_TEMPLATES_SOURCE_URL="https://cloud.activepieces.com/api/v1/flow-templates"
37 | ap-postgres:
38 | image: postgres:14.4
39 | container_name: postgres
40 | restart: unless-stopped
41 | environment:
42 | - POSTGRES_DB=activepieces
43 | - POSTGRES_PASSWORD=postgresof_changeme
44 | - POSTGRES_USER=postgres
45 | volumes:
46 | - /portainer/Files/AppData/Config/activepieces/postgres_data:/var/lib/postgresql/data
47 | ap-redis:
48 | image: redis:7.0.7
49 | container_name: redis
50 | restart: unless-stopped
51 | volumes:
52 | - /portainer/Files/AppData/Config/activepieces/redis_data:/data
53 |
--------------------------------------------------------------------------------
/Template/Stack/actual.yml:
--------------------------------------------------------------------------------
1 | services:
2 | actual-server:
3 | container_name: actual
4 | ports:
5 | - 5007:5006
6 | volumes:
7 | - /portainer/Files/AppData/Config/actual:/data
8 | image: 'actualbudget/actual-server:latest'
9 | restart: unless-stopped
10 |
--------------------------------------------------------------------------------
/Template/Stack/adguardhome.yml:
--------------------------------------------------------------------------------
1 | services:
2 | adguardhome:
3 | image: adguard/adguardhome
4 | container_name: adguardhome
5 | ports:
6 | - 53:53/tcp
7 | - 53:53/udp
8 | - 67:67/udp
9 | - 68:68/tcp
10 | - 68:68/udp
11 | - 784:784/udp
12 | - 853:853/tcp
13 | - 3000:3000/tcp
14 | - 80:80/tcp
15 | - 443:443/tcp
16 | volumes:
17 | - /portainer/Files/AppData/Config/adguardhome/workdir:/opt/adguardhome/work
18 | - /portainer/Files/AppData/Config/adguardhome/confdir:/opt/adguardhome/conf
19 | restart: unless-stopped
20 |
--------------------------------------------------------------------------------
/Template/Stack/airsonic.yml:
--------------------------------------------------------------------------------
1 | services:
2 | airsonic:
3 | image: lscr.io/linuxserver/airsonic
4 | container_name: airsonic
5 | environment:
6 | - PUID=1000
7 | - PGID=1000
8 | - TZ=Europe/Athens
9 | volumes:
10 | - /portainer/Files/AppData/Config/airsonic:/config
11 | - /portainer/multimedia/music/:/music
12 | - /portainer/multimedia/music/playlists:/playlists
13 | - /portainer/multimedia/podcasts:/podcasts
14 | - /portainer/multimedia/music/othermedia:/media #optional
15 | ports:
16 | - 4040:4040
17 | restart: unless-stopped
18 |
--------------------------------------------------------------------------------
/Template/Stack/ansible-semaphore.yml:
--------------------------------------------------------------------------------
1 | services:
2 | # uncomment this section and comment out the mysql section to use postgres instead of mysql
3 | #postgres:
4 | #restart: unless-stopped
5 | #ports:
6 | #- 5432:5432
7 | #image: postgres:14
8 | #hostname: postgres
9 | #volumes:
10 | # - semaphore-postgres:/var/lib/postgresql/data
11 | #environment:
12 | # POSTGRES_USER: semaphore
13 | # POSTGRES_PASSWORD: semaphore
14 | # POSTGRES_DB: semaphore
15 | # if you wish to use postgres, comment the mysql service section below
16 | mysql:
17 | restart: unless-stopped
18 | ports:
19 | - 3306:3306
20 | image: mysql:8.0
21 | hostname: mysql
22 | volumes:
23 | - semaphore-mysql:/var/lib/mysql
24 | environment:
25 | MYSQL_RANDOM_ROOT_PASSWORD: 'yes'
26 | MYSQL_DATABASE: semaphore
27 | MYSQL_USER: semaphore
28 | MYSQL_PASSWORD: semaphore
29 | semaphore:
30 | restart: unless-stopped
31 | ports:
32 | - 3000:3000
33 | image: semaphoreui/semaphore:latest
34 | environment:
35 | SEMAPHORE_DB_USER: semaphore
36 | SEMAPHORE_DB_PASS: semaphore
37 | SEMAPHORE_DB_HOST: mysql # for postgres, change to: postgres
38 | SEMAPHORE_DB_PORT: 3306 # change to 5432 for postgres
39 | SEMAPHORE_DB_DIALECT: mysql
40 | SEMAPHORE_DB: semaphore
41 | SEMAPHORE_PLAYBOOK_PATH: /tmp/semaphore/
42 | SEMAPHORE_ADMIN_PASSWORD: changeme
43 | SEMAPHORE_ADMIN_NAME: admin
44 | SEMAPHORE_ADMIN_EMAIL: admin@localhost
45 | SEMAPHORE_ADMIN: admin
46 | SEMAPHORE_ACCESS_KEY_ENCRYPTION: gs72mPntFATGJs9qK0pQ0rKtfidlexiMjYCH9gWKhTU=
47 | SEMAPHORE_LDAP_ACTIVATED: 'no' # if you wish to use ldap, set to: 'yes'
48 | SEMAPHORE_LDAP_HOST: dc01.local.example.com
49 | SEMAPHORE_LDAP_PORT: '636'
50 | SEMAPHORE_LDAP_NEEDTLS: 'yes'
51 | SEMAPHORE_LDAP_DN_BIND: 'uid=bind_user,cn=users,cn=accounts,dc=local,dc=shiftsystems,dc=net'
52 | SEMAPHORE_LDAP_PASSWORD: 'ldap_bind_account_password'
53 | SEMAPHORE_LDAP_DN_SEARCH: 'dc=local,dc=example,dc=com'
54 | SEMAPHORE_LDAP_SEARCH_FILTER: "(\u0026(uid=%s)(memberOf=cn=ipausers,cn=groups,cn=accounts,dc=local,dc=example,dc=com))"
55 | depends_on:
56 | - mysql # for postgres, change to: postgres
57 | volumes:
58 | semaphore-mysql: # to use postgres, switch to: semaphore-postgres
59 |
--------------------------------------------------------------------------------
/Template/Stack/apprise.yml:
--------------------------------------------------------------------------------
1 | #& type: 3
2 | #& title: Apprise API
3 | #& description: Send notifications to more then 70+ services.
4 | #& note: Website: Github.com
5 | #& categories: SelfHosted
6 | #& platform: linux
7 | #& logo: https://warehouse-camo.ingress.cmh1.psfhosted.org/a22d9206f80dfbb10748b6764fee932ff0ae1a8f/687474703a2f2f7265706f2e6e75787265662e636f6d2f7075622f696d672f6c6f676f2d617070726973652e706e67
8 |
9 | #% SERVICE: Name of the service (No spaces or points) [apprise-api]
10 | #% DATA_LOCATION: Data location (Example: /apps/service) [/portainer/Files/AppData/Config/apprise]
11 | #% URL: Service URL (Example: service.com)
12 | #% NETWORK: Your Traefik network (Example: proxy) [proxy]
13 |
14 | # Work with Portainer
15 | services:
16 | apprise-api:
17 | image: lscr.io/linuxserver/apprise-api
18 | container_name: $SERVICE
19 | volumes:
20 | - $DATA_LOCATION/$SERVICE/config:/config
21 | healthcheck:
22 | test: ["CMD", "bash", "-c", "exec 5<>/dev/tcp/127.0.0.1/8036 && echo -e 'GET /healthz HTTP/1.1\n\n' >&5 && cat <&5 | head -n 1 | grep 200"]
23 | interval: 1m
24 | timeout: 30s
25 | retries: 3
26 | restart: unless-stopped
27 | networks:
28 | - default
29 | labels:
30 | - "traefik.enable=true"
31 | - "traefik.http.routers.$SERVICE.entrypoints=https"
32 | - "traefik.http.routers.$SERVICE.rule=Host(`$URL`)"
33 | - "traefik.http.routers.$SERVICE.tls=true"
34 | - "traefik.http.routers.$SERVICE.tls.certresolver=http"
35 | - "traefik.http.services.$SERVICE.loadbalancer.server.port=8036"
36 | - "traefik.docker.network=$NETWORK"
37 | networks:
38 | default:
39 | external:
40 | name: $NETWORK
41 |
--------------------------------------------------------------------------------
/Template/Stack/appsmith.yml:
--------------------------------------------------------------------------------
1 | services:
2 | appsmith:
3 | image: index.docker.io/appsmith/appsmith-ce
4 | container_name: appsmith
5 | ports:
6 | - "1810:80"
7 | - "1443:443"
8 | volumes:
9 | - /portainer/Files/AppData/Config/appsmith:/appsmith-stacks
10 | restart: unless-stopped
11 | # Uncomment the lines below to enable auto-update
12 | #labels:
13 | # com.centurylinklabs.watchtower.enable: "true"
14 |
15 | #auto_update:
16 | # image: containrrr/watchtower
17 | # volumes:
18 | # - /var/run/docker.sock:/var/run/docker.sock
19 | # # Update check interval in seconds.
20 | # command: --schedule "0 0 * ? * *" --label-enable --cleanup
21 | # restart: unless-stopped
22 | # depends_on:
23 | # - appsmith
24 | # environment:
25 | # - WATCHTOWER_LIFECYCLE_HOOKS=true
26 |
--------------------------------------------------------------------------------
/Template/Stack/aria2pro.yml:
--------------------------------------------------------------------------------
1 | #https://raw.githubusercontent.com/P3TERX/Aria2-Pro-Docker/master/docker-compose.yml
2 | services:
3 |
4 | Aria2-Pro:
5 | container_name: aria2-pro
6 | image: p3terx/aria2-pro
7 | environment:
8 | - PUID=65534
9 | - PGID=65534
10 | - UMASK_SET=022
11 | #- RPC_SECRET=P3TERX
12 | - RPC_PORT=6800
13 | - LISTEN_PORT=6888
14 | - DISK_CACHE=64M
15 | - IPV6_MODE=false
16 | - UPDATE_TRACKERS=true
17 | - CUSTOM_TRACKER_URL=
18 | - TZ=Europe/Athens
19 | volumes:
20 | - /portainer/Files/AppData/Config/aria2-pro:/config
21 | - /portainer/Downloads:/downloads
22 | # If you use host network mode, then no port mapping is required.
23 | # This is the easiest way to use IPv6 networks.
24 | # network_mode: host
25 | network_mode: bridge
26 | ports:
27 | - 6800:6800
28 | - 6888:6888
29 | - 6888:6888/udp
30 | restart: always
31 | # Since Aria2 will continue to generate logs, limit the log size to 1M to prevent your hard disk from running out of space.
32 | logging:
33 | driver: json-file
34 | options:
35 | max-size: 1m
36 |
37 | # AriaNg is just a static web page, usually you only need to deploy on a single host.
38 | AriaNg:
39 | container_name: ariang
40 | image: p3terx/ariang
41 | environment:
42 | - PUID=1000
43 | - PGID=1000
44 | - ARIA2RPCPORT=6800
45 | - RPC_SECRET=P3TERX
46 | command: --port 6880 --ipv6
47 | # network_mode: host
48 | network_mode: bridge
49 | ports:
50 | - 6880:6880
51 | restart: always
52 | logging:
53 | driver: json-file
54 | options:
55 | max-size: 1m
56 |
--------------------------------------------------------------------------------
/Template/Stack/audiobookshelf.yml:
--------------------------------------------------------------------------------
1 | services:
2 | audiobookshelf:
3 | container_name: audiobookshelf
4 | image: ghcr.io/advplyr/audiobookshelf
5 | ports:
6 | - 13378:80
7 | volumes:
8 | - /portainer/Files/AppData/Config/audiobookshelf/audiobooks:/audiobooks
9 | - /portainer/Files/AppData/Config/audiobookshelf/podcasts:/podcasts
10 | - /portainer/Files/AppData/Config/audiobookshelf/metadata:/metadata
11 | - /portainer/Files/AppData/Config/audiobookshelf:/config
12 |
--------------------------------------------------------------------------------
/Template/Stack/authentik.yml:
--------------------------------------------------------------------------------
1 | services:
2 | postgresql:
3 | image: postgres:12-alpine
4 | restart: unless-stopped
5 | volumes:
6 | - database:/var/lib/postgresql/data
7 | environment:
8 | - POSTGRES_PASSWORD=${PG_PASS:?database password required}
9 | - POSTGRES_USER=${PG_USER:-authentik}
10 | - POSTGRES_DB=${PG_DB:-authentik}
11 | env_file:
12 | - .env
13 | redis:
14 | image: redis:alpine
15 | restart: unless-stopped
16 | server:
17 | image: ${AUTHENTIK_IMAGE:-ghcr.io/goauthentik/server}:${AUTHENTIK_TAG:-2021.12.5}
18 | restart: unless-stopped
19 | command: server
20 | environment:
21 | AUTHENTIK_REDIS__HOST: redis
22 | AUTHENTIK_POSTGRESQL__HOST: postgresql
23 | AUTHENTIK_POSTGRESQL__USER: ${PG_USER:-authentik}
24 | AUTHENTIK_POSTGRESQL__NAME: ${PG_DB:-authentik}
25 | AUTHENTIK_POSTGRESQL__PASSWORD: ${PG_PASS}
26 | # AUTHENTIK_ERROR_REPORTING__ENABLED: "true"
27 | # WORKERS: 2
28 | volumes:
29 | - ./media:/media
30 | - ./custom-templates:/templates
31 | - geoip:/geoip
32 | env_file:
33 | - .env
34 | ports:
35 | - "0.0.0.0:${AUTHENTIK_PORT_HTTP:-9000}:9000"
36 | - "0.0.0.0:${AUTHENTIK_PORT_HTTPS:-9443}:9443"
37 | worker:
38 | image: ${AUTHENTIK_IMAGE:-ghcr.io/goauthentik/server}:${AUTHENTIK_TAG:-2021.12.5}
39 | restart: unless-stopped
40 | command: worker
41 | environment:
42 | AUTHENTIK_REDIS__HOST: redis
43 | AUTHENTIK_POSTGRESQL__HOST: postgresql
44 | AUTHENTIK_POSTGRESQL__USER: ${PG_USER:-authentik}
45 | AUTHENTIK_POSTGRESQL__NAME: ${PG_DB:-authentik}
46 | AUTHENTIK_POSTGRESQL__PASSWORD: ${PG_PASS}
47 | # AUTHENTIK_ERROR_REPORTING__ENABLED: "true"
48 | # This is optional, and can be removed. If you remove this, the following will happen
49 | # - The permissions for the /backups and /media folders aren't fixed, so make sure they are 1000:1000
50 | # - The docker socket can't be accessed anymore
51 | user: root
52 | volumes:
53 | - ./backups:/backups
54 | - ./media:/media
55 | - ./certs:/certs
56 | - /var/run/docker.sock:/var/run/docker.sock
57 | - ./custom-templates:/templates
58 | - geoip:/geoip
59 | env_file:
60 | - .env
61 | geoipupdate:
62 | image: "maxmindinc/geoipupdate:latest"
63 | volumes:
64 | - "geoip:/usr/share/GeoIP"
65 | environment:
66 | GEOIPUPDATE_EDITION_IDS: "GeoLite2-City"
67 | GEOIPUPDATE_FREQUENCY: "8"
68 | env_file:
69 | - .env
70 |
71 | volumes:
72 | database:
73 | driver: local
74 | geoip:
75 | driver: local
76 |
--------------------------------------------------------------------------------
/Template/Stack/autobrr.yml:
--------------------------------------------------------------------------------
1 | services:
2 | autobrr:
3 | container_name: autobrr
4 | image: ghcr.io/autobrr/autobrr:latest
5 | restart: unless-stopped
6 | #logging:
7 | # driver: json-file
8 | # options:
9 | # max-file: ${DOCKERLOGGING_MAXFILE}
10 | # max-size: ${DOCKERLOGGING_MAXSIZE}
11 | user: 1000:1000
12 | environment:
13 | - TZ=Europe/Athens
14 | volumes:
15 | - /portainer/Files/AppData/Config/autobrr/config:/config
16 | ports:
17 | - 7474:7474
18 |
--------------------------------------------------------------------------------
/Template/Stack/baikal.yml:
--------------------------------------------------------------------------------
1 | services:
2 | baikal:
3 | image: ckulka/baikal:nginx
4 | restart: always
5 | ports:
6 | - "8220:80"
7 | volumes:
8 | - /portainer/Files/AppData/Config/baikal/config:/var/www/baikal/config
9 | - /portainer/Files/AppData/Config/baikal/data:/var/www/baikal/Specific
10 |
11 | volumes:
12 | config:
13 | data:
14 |
--------------------------------------------------------------------------------
/Template/Stack/baserow.yml:
--------------------------------------------------------------------------------
1 | services:
2 | baserow:
3 | image: baserow/baserow:latest
4 | container_name: baserow
5 | environment:
6 | - TZ=Europe/Athens
7 | volumes:
8 | - /portainer/Files/AppData/Config/baserow:/baserow/data
9 | ports:
10 | - 280:80 #changed from default 80
11 | - 2443:443
12 | restart: unless-stopped
13 |
14 |
15 |
16 |
17 |
--------------------------------------------------------------------------------
/Template/Stack/bazarr.yml:
--------------------------------------------------------------------------------
1 | services:
2 | bazarr:
3 | image: lscr.io/linuxserver/bazarr:latest
4 | container_name: bazarr
5 | environment:
6 | - PUID=1000
7 | - PGID=1000
8 | - TZ=Europe/Athens
9 | volumes:
10 | - /portainer/Files/AppData/Config/bazarr/config:/config
11 | - /portainer/Movies:/movies #optional
12 | - /portainer/TV:/tv #optional
13 | ports:
14 | - 6767:6767
15 | restart: unless-stopped
16 |
--------------------------------------------------------------------------------
/Template/Stack/beszel.yml:
--------------------------------------------------------------------------------
1 | services:
2 | beszel:
3 | image: 'henrygd/beszel'
4 | container_name: 'beszel'
5 | restart: unless-stopped
6 | ports:
7 | - '8090:8090'
8 | volumes:
9 | - /portainer/Files/AppData/Config/beszel:/beszel_data
10 |
--------------------------------------------------------------------------------
/Template/Stack/blinko.yml:
--------------------------------------------------------------------------------
1 | networks:
2 | blinko-network:
3 | driver: bridge
4 |
5 | services:
6 | blinko-website:
7 | container_name: blinko-website
8 | build:
9 | context: .
10 | args:
11 | USE_MIRROR: "true"
12 | dockerfile: ./dockerfile
13 | environment:
14 | NODE_ENV: production
15 | NEXTAUTH_URL: http://localhost:1111
16 | NEXT_PUBLIC_BASE_URL: http://localhost:1111
17 | NEXTAUTH_SECRET: my_ultra_secure_nextauth_secret
18 | DATABASE_URL: postgresql://postgres:mysecretpassword@postgres:5432/postgres
19 | depends_on:
20 | blinko-postgres:
21 | condition: service_healthy
22 | restart: always
23 | ports:
24 | - 1111:1111
25 | healthcheck:
26 | test: ["CMD", "curl", "-f", "http://blinko-website:1111/"]
27 | interval: 30s
28 | timeout: 10s
29 | retries: 5
30 | start_period: 30s
31 | networks:
32 | - blinko-network
33 |
34 | blinko-postgres:
35 | image: postgres:14
36 | container_name: blinko-postgres
37 | restart: always
38 | ports:
39 | - 5432:5432
40 | environment:
41 | POSTGRES_DB: postgres
42 | POSTGRES_USER: postgres
43 | POSTGRES_PASSWORD: mysecretpassword
44 | healthcheck:
45 | test:
46 | ["CMD", "pg_isready", "-U", "postgres", "-d", "postgres"]
47 | interval: 5s
48 | timeout: 10s
49 | retries: 5
50 | networks:
51 | - blinko-network
52 |
--------------------------------------------------------------------------------
/Template/Stack/bookstack.yml:
--------------------------------------------------------------------------------
1 | services:
2 | bookstack:
3 | image: linuxserver/bookstack
4 | container_name: bookstack
5 | environment:
6 | - PUID=${PUID}
7 | - PGID=${PGID}
8 | - DB_HOST=bookstack_db
9 | - DB_USER=bookstack
10 | - DB_PASS=${DATABASE_PASSWORD}
11 | - DB_DATABASE=bookstackapp
12 | volumes:
13 | - /portainer/Files/AppData/Config/Bookstack/Data:/config
14 | ports:
15 | - ${PORT}:80
16 | restart: unless-stopped
17 | depends_on:
18 | - bookstack_db
19 | bookstack_db:
20 | image: linuxserver/mariadb
21 | container_name: bookstack_db
22 | environment:
23 | - PUID=${PUID}
24 | - PGID=${PGID}
25 | - MYSQL_ROOT_PASSWORD=${MYSQL_ROOT_PASSWORD}
26 | - TZ=${TZ}
27 | - MYSQL_DATABASE=bookstackapp
28 | - MYSQL_USER=bookstack
29 | - MYSQL_PASSWORD=${DATABASE_PASSWORD}
30 | volumes:
31 | - /portainer/Files/AppData/Bookstack/DB:/config
32 | restart: unless-stopped
33 |
--------------------------------------------------------------------------------
/Template/Stack/broadlink-manager.yml:
--------------------------------------------------------------------------------
1 | services:
2 | broadlinkmanager:
3 | image: techblog/broadlinkmanager
4 | network_mode: host
5 | container_name: broadlinkmanager
6 | restart: unless-stopped
7 | volumes:
8 | - /portainer/Files/AppData/Config/broadlinkmanager:/opt/broadlinkmanager/data
9 |
10 |
--------------------------------------------------------------------------------
/Template/Stack/castopod.yml:
--------------------------------------------------------------------------------
1 | services:
2 | app:
3 | image: castopod/app:latest
4 | container_name: Castopod-APP
5 | volumes:
6 | - /portainer/Files/AppData/Config/castopod/app:/opt/castopod/public/media
7 | environment:
8 | MYSQL_DATABASE: castopod
9 | MYSQL_USER: castopod
10 | MYSQL_PASSWORD: changeme
11 | CP_BASEURL: https://castopod.me
12 | CP_ANALYTICS_SALT: changeme
13 | CP_CACHE_HANDLER: redis
14 | CP_REDIS_HOST: redis
15 | networks:
16 | - castopod-app
17 | - castopod-db
18 | restart: always
19 |
20 | web-server:
21 | image: castopod/web-server:latest
22 | container_name: Castopod-WEB-SERVER
23 | volumes:
24 | - /portainer/Files/AppData/Config/castopod/web:/var/www/html/media
25 | networks:
26 | - castopod-app
27 | ports:
28 | - 8848:80
29 | restart: unless-stopped
30 |
31 | mariadb:
32 | image: mariadb
33 | container_name: Castopod-DB
34 | networks:
35 | - castopod-db
36 | volumes:
37 | - /portainer/Files/AppData/Config/castopod/db:/var/lib/mysql
38 | user: 1026:100
39 | environment:
40 | MYSQL_ROOT_PASSWORD: changeme
41 | MYSQL_DATABASE: castopod
42 | MYSQL_USER: castopod
43 | MYSQL_PASSWORD: changeme
44 | restart: always
45 |
46 | redis:
47 | image: redis
48 | container_name: Castopod-REDIS
49 | volumes:
50 | - /portainer/Files/AppData/Config/castopod/redis:/data
51 | user: 1026:100
52 | networks:
53 | - castopod-app
54 | video-clipper:
55 | image: castopod/video-clipper:latest
56 | container_name: Castopod-VIDEO
57 | volumes:
58 | - /portainer/Files/AppData/Config/castopod/media:/opt/castopod/public/media
59 | environment:
60 | MYSQL_DATABASE: castopod
61 | MYSQL_USER: castopod
62 | MYSQL_PASSWORD: changeme
63 | networks:
64 | - castopod-db
65 | restart: always
66 |
67 | volumes:
68 | castopod-media:
69 | castopod-db:
70 | castopod-cache:
71 |
72 | networks:
73 | castopod-app:
74 | castopod-db:
75 |
--------------------------------------------------------------------------------
/Template/Stack/checkmate.yml:
--------------------------------------------------------------------------------
1 | services:
2 | client:
3 | image: bluewaveuptime/uptime_client:latest
4 | restart: always
5 | environment:
6 | UPTIME_APP_API_BASE_URL: "http://localhost:5000/api/v1"
7 | ports:
8 | - "1180:80"
9 | - "11443:443"
10 | depends_on:
11 | - server
12 | server:
13 | image: bluewaveuptime/uptime_server:latest
14 | restart: always
15 | ports:
16 | - "5000:5000"
17 | depends_on:
18 | - redis
19 | - mongodb
20 | environment:
21 | - DB_CONNECTION_STRING=mongodb://mongodb:27017/uptime_db
22 | - REDIS_HOST=redis
23 | # volumes:
24 | # - /var/run/docker.sock:/var/run/docker.sock:ro
25 | redis:
26 | image: bluewaveuptime/uptime_redis:latest
27 | restart: always
28 | ports:
29 | - "6379:6379"
30 | volumes:
31 | - /portainer/Files/AppData/Config/checkmate/redis/data:/data
32 | healthcheck:
33 | test: ["CMD", "redis-cli", "ping"]
34 | interval: 30s
35 | timeout: 10s
36 | retries: 5
37 | start_period: 5s
38 | mongodb:
39 | image: bluewaveuptime/uptime_database_mongo:latest
40 | restart: always
41 | volumes:
42 | - /portainer/Files/AppData/Config/checkmate/mongo/data:/data/db
43 | command: ["mongod", "--quiet"]
44 | ports:
45 | - "27017:27017"
46 |
--------------------------------------------------------------------------------
/Template/Stack/chibisafe.yml:
--------------------------------------------------------------------------------
1 | services:
2 | chibisafe:
3 | image: chibisafe/chibisafe:latest
4 | container_name: Chibisafe
5 | mem_limit: 8g
6 | cpu_shares: 2048
7 | security_opt:
8 | - no-new-privileges:true
9 | volumes:
10 | - /portainer/Files/AppData/Config/chibisafe/db:/home/node/chibisafe/database:rw
11 | - /portainer/Files/AppData/Config/chibisafe/uploads:/home/node/chibisafe/uploads:rw
12 | - /portainer/Files/AppData/Config/chibisafe/logs:/home/node/chibisafe/logs:rw
13 | ports:
14 | - 2425:8000
15 | restart: on-failure:5
16 |
--------------------------------------------------------------------------------
/Template/Stack/chiefonboarding.yml:
--------------------------------------------------------------------------------
1 | services:
2 | cob-db:
3 | restart: always
4 | image: postgres:latest
5 | expose:
6 | - "5432"
7 | volumes:
8 | - /portainer/Files/AppData/Config/chiefonboarding/pgdata:/var/lib/postgresql/data/
9 | environment:
10 | - POSTGRES_DB=postgres
11 | - POSTGRES_USER=postgres
12 | - POSTGRES_PASSWORD=postgres
13 | networks:
14 | - global
15 |
16 | cob-web:
17 | restart: always
18 | build:
19 | dockerfile: ./Dockerfile-dev
20 | context: ./back/
21 | ports:
22 | - "127.0.0.1:8111:8000"
23 | environment:
24 | - DEBUG=True
25 | - SECRET_KEY=somethingsupersecret
26 | - BASE_URL=http://0.0.0.0:3111
27 | - DATABASE_URL=postgres://postgres:postgres@db:5432/postgres
28 | - DEFAULT_FROM_EMAIL=hello@chiefonboarding.com
29 | - ACCOUNT_EMAIL=admin@example.com
30 | - ACCOUNT_PASSWORD=admin
31 | volumes:
32 | - /portainer/Files/AppData/Config/chiefonboarding/back:/app
33 | depends_on:
34 | - cob-db
35 | networks:
36 | - global
37 |
38 | volumes:
39 | pgdata:
40 |
41 | networks:
42 | global:
43 |
--------------------------------------------------------------------------------
/Template/Stack/codex.yml:
--------------------------------------------------------------------------------
1 | services:
2 | codex:
3 | image: docker.io/ajslater/codex
4 | container_name: codex
5 | volumes:
6 | - /portainer/Files/AppData/Config/codex:/config
7 | - /portainer/comics:/comics:ro
8 | ports:
9 | - 9810:9810
10 | restart: on-failure
11 |
--------------------------------------------------------------------------------
/Template/Stack/dashdot.yml:
--------------------------------------------------------------------------------
1 | services:
2 | dash:
3 | image: mauricenino/dashdot:latest
4 | restart: unless-stopped
5 | privileged: true
6 | ports:
7 | - '9980:3001'
8 | volumes:
9 | - /portainer/Files/AppData/Config/dashdot/:/mnt/host:ro
10 | environment:
11 | DASHDOT_ENABLE_CPU_TEMPS: 'true'
12 | DASHDOT_ALWAYS_SHOW_PERCENTAGES: 'true'
13 | DASHDOT_WIDGET_LIST: 'os,cpu,storage,ram,network'
14 | DASHDOT_OS_LABEL_LIST: 'os,arch,up_since'
15 | DASHDOT_CPU_LABEL_LIST: 'brand,model,cores,threads,frequency'
16 | DASHDOT_STORAGE_LABEL_LIST: 'brand,size,type'
17 | DASHDOT_RAM_LABEL_LIST: 'brand,size,type,frequency'
18 | DASHDOT_NETWORK_LABEL_LIST: 'type,speed_up,speed_down,interface_speed'
19 | DASHDOT_GPU_LABEL_LIST: 'brand, model, memory'
20 |
21 |
--------------------------------------------------------------------------------
/Template/Stack/dashy.yml:
--------------------------------------------------------------------------------
1 | services:
2 | dashy:
3 | # To build from source, replace 'image: lissy93/dashy' with 'build: .'
4 | # build: .
5 | image: lissy93/dashy
6 | container_name: Dashy
7 | # Pass in your config file below, by specifying the path on your host machine
8 | volumes:
9 | - /portainer/Files/AppData/Config/Dashy/conf.yml:/app/public/conf.yml
10 | - /portainer/Files/AppData/Config/Dashy/icons:/app/public/item-icons
11 | ports:
12 | - 4000:80
13 | # Set any environmental variables
14 | environment:
15 | - NODE_ENV=production
16 | # Specify your user ID and group ID. You can find this by running `id -u` and `id -g`
17 | - UID=1000
18 | - GID=1000
19 | # Specify restart policy
20 | restart: always
21 | # Configure healthchecks
22 | healthcheck:
23 | test: ['CMD', 'node', '/app/services/healthcheck']
24 | interval: 1m30s
25 | timeout: 10s
26 | retries: 3
27 | start_period: 40s
28 |
--------------------------------------------------------------------------------
/Template/Stack/docker-container-stats.yml:
--------------------------------------------------------------------------------
1 | services:
2 | stats:
3 | image: virtualzone/docker-container-stats
4 | container_name: docker-stats
5 | ports:
6 | - 8383:8080
7 | environment:
8 | STATS_UPDATE_INTERVAL: 10
9 | volumes:
10 | - /var/run/docker.sock:/var/run/docker.sock:ro
11 | - /portainer/Files/AppData/Config/docker-stats/db:/opt/docker-stats/db
12 |
--------------------------------------------------------------------------------
/Template/Stack/dockge.yml:
--------------------------------------------------------------------------------
1 | services:
2 | dockge:
3 | image: louislam/dockge:1
4 | restart: unless-stopped
5 | ports:
6 | # Host Port : Container Port
7 | - 5001:5001
8 | volumes:
9 | - /var/run/docker.sock:/var/run/docker.sock
10 | - /portainer/Files/AppData/Config/dockge/data:/app/data
11 | - /portainer/Files/AppData/Config/dockge/stacks:/opt/stacks
12 | # If you want to use private registries, you need to share the auth file with Dockge:
13 | # - /root/.docker/:/root/.docker
14 |
15 | environment:
16 | # Tell Dockge where is your stacks directory
17 | - DOCKGE_STACKS_DIR=/portainer/Files/AppData/Config/dockge/stacks
18 |
--------------------------------------------------------------------------------
/Template/Stack/documize.yml:
--------------------------------------------------------------------------------
1 | services:
2 | documize-db:
3 | image: postgres:12
4 | restart: always
5 | ports:
6 | - 5432:5432
7 | environment:
8 | POSTGRES_USER: documize
9 | POSTGRES_PASSWORD: hsk3Acndky8cdTNx3
10 | POSTGRES_DB: documize
11 | volumes:
12 | - /portainer/Files/AppData/Config/documize/db-data:/var/lib/postgresql/data
13 | networks:
14 | - documizenet
15 |
16 | documize-app:
17 | image: debian:latest
18 | command: /bin/sh -c "apt-get -qq update && apt-get -qq install -y wget && wget https://community-downloads.s3.us-east-2.amazonaws.com/documize-community-plus-linux-amd64 && chmod 777 ./documize-community-plus-linux-amd64 && ./documize-community-plus-linux-amd64"
19 | depends_on:
20 | - documize-db
21 | ports:
22 | - 5001:5001
23 | environment:
24 | DOCUMIZEPORT: 5001
25 | DOCUMIZEDB: host=db port=5432 dbname=documize user=documize password=Passw0rd sslmode=disable
26 | DOCUMIZEDBTYPE: postgresql
27 | DOCUMIZESALT: hsk3Acndky8cdTNx3
28 | DOCUMIZELOCATION: selfhost
29 | networks:
30 | - documizenet
31 |
32 | networks:
33 | documizenet:
34 |
--------------------------------------------------------------------------------
/Template/Stack/dokemon.yml:
--------------------------------------------------------------------------------
1 | services:
2 | dokemon:
3 | image: productiveops/dokemon:latest
4 | container_name: dokemon
5 | restart: unless-stopped
6 | ports:
7 | - 9090:9090
8 | volumes:
9 | - /var/run/docker.sock:/var/run/docker.sock
10 | - /portainer/Files/AppData/Config/dokemon/data:/data
11 |
--------------------------------------------------------------------------------
/Template/Stack/drawio.yml:
--------------------------------------------------------------------------------
1 | #This compose file adds draw.io to your stack
2 | services:
3 | drawio:
4 | image: fjudith/draw.io
5 | container_name: drawio
6 | restart: unless-stopped
7 | ports:
8 | - 28181:8080
9 | - 28443:8443
10 | environment:
11 | PUBLIC_DNS: domain
12 | ORGANISATION_UNIT: unit
13 | ORGANISATION: org
14 | CITY: Athens
15 | STATE: Attica
16 | COUNTRY_CODE: Greece
17 | DRAWIO_GITLAB_URL: http://mygitlab.net
18 | DRAWIO_GITLAB_ID: change_to_your_app_id
19 |
--------------------------------------------------------------------------------
/Template/Stack/excalidraw.yml:
--------------------------------------------------------------------------------
1 | services:
2 | excalidraw:
3 | build:
4 | context: .
5 | args:
6 | - NODE_ENV=development
7 | container_name: excalidraw
8 | ports:
9 | - "3111:80"
10 | restart: on-failure
11 | stdin_open: true
12 | healthcheck:
13 | disable: true
14 | environment:
15 | - NODE_ENV=development
16 | volumes:
17 | - /portainer/Files/AppData/Config/excalidraw/:/opt/node_app/app:delegated
18 | - /portainer/Files/AppData/Config/excalidraw/package.json:/opt/node_app/package.json
19 | - /portainer/Files/AppData/Config/excalidraw/yarn.lock:/opt/node_app/yarn.lock
20 | - /portainer/Files/AppData/Config/excalidraw/notused:/opt/node_app/app/node_modules
21 |
--------------------------------------------------------------------------------
/Template/Stack/facebox.yml:
--------------------------------------------------------------------------------
1 | services:
2 | facebox:
3 | image: machinebox/facebox
4 | container_name: facebox
5 | restart: unless-stopped
6 | ports:
7 | - 1080:8080
8 | environment:
9 | - MB_KEY=${MB_KEY}
10 | - MB_FACEBOX_DISABLE_RECOGNITION=false
11 |
--------------------------------------------------------------------------------
/Template/Stack/feedcord.yml:
--------------------------------------------------------------------------------
1 | services:
2 | myfeedcord:
3 | image: qolors/feedcord:latest
4 | container_name: FeedCord
5 | restart: unless-stopped
6 | volumes:
7 | - /portainer/Files/AppData/Config/feedcord/appsettings.json:/app/config/appsettings.json
8 |
--------------------------------------------------------------------------------
/Template/Stack/fenrus.yml:
--------------------------------------------------------------------------------
1 | services:
2 | fenrus:
3 | image: revenz/fenrus
4 | container_name: fenrus
5 | environment:
6 | - TZ=Europe/Athens
7 | volumes:
8 | - /portainer/Files/AppData/Config/fenrus/data:/app/data
9 | - /portainer/Files/AppData/Config/fenrus/images:/app/wwwroot/images
10 | ports:
11 | - 3003:3000
12 | restart: unless-stopped
13 |
--------------------------------------------------------------------------------
/Template/Stack/ferdiserver.yml:
--------------------------------------------------------------------------------
1 | services:
2 | ferdi-server:
3 | image: getferdi/ferdi-server
4 | container_name: ferdi-server
5 | environment:
6 | - NODE_ENV=development
7 | - EXTERNAL_DOMAIN=localhost
8 | - DB_CONNECTION=sqlite
9 | - DB_HOST=127.0.0.1
10 | - DB_PORT=3306
11 | - DB_USER=root
12 | - DB_PASSWORD=password
13 | - DB_DATABASE=ferdi
14 | - DB_SSL=false
15 | - MAIL_CONNECTION=smtp
16 | - SMPT_HOST=127.0.0.1
17 | - SMTP_PORT=2525
18 | - MAIL_SSL=false
19 | - MAIL_USERNAME=username
20 | - MAIL_PASSWORD=password
21 | - MAIL_SENDER=noreply@getferdi.com
22 | - IS_CREATION_ENABLED=true
23 | - IS_DASHBOARD_ENABLED=true
24 | - IS_REGISTRATION_ENABLED=true
25 | - CONNECT_WITH_FRANZ=false
26 | - DATA_DIR=/data
27 | - PUID=1000
28 | - PGID=1000
29 | volumes:
30 | - ferdi-database-vol:/data
31 | - ferdi-recipes-vol:/app/recipes
32 | ports:
33 | - 3333:3333
34 | restart: unless-stopped
35 | volumes:
36 | ferdi-database-vol:
37 | ferdi-recipes-vol:
38 |
--------------------------------------------------------------------------------
/Template/Stack/ferdium.yml:
--------------------------------------------------------------------------------
1 | services:
2 | ferdi-server:
3 | image: ferdium/ferdium-server:latest
4 | container_name: ferdium-server
5 | environment:
6 | - NODE_ENV=development
7 | - EXTERNAL_DOMAIN=localhost
8 | - DB_CONNECTION=sqlite
9 | - DB_HOST=127.0.0.1
10 | - DB_PORT=3306
11 | - DB_USER=root
12 | - DB_PASSWORD=password
13 | - DB_DATABASE=ferdi
14 | - DB_SSL=false
15 | - MAIL_CONNECTION=smtp
16 | - SMPT_HOST=127.0.0.1
17 | - SMTP_PORT=2525
18 | - MAIL_SSL=false
19 | - MAIL_USERNAME=username
20 | - MAIL_PASSWORD=password
21 | - MAIL_SENDER=noreply@getferdi.com
22 | - IS_CREATION_ENABLED=true
23 | - IS_DASHBOARD_ENABLED=true
24 | - IS_REGISTRATION_ENABLED=true
25 | - CONNECT_WITH_FRANZ=true
26 | - DATA_DIR=/data
27 | - PUID=1000
28 | - PGID=1000
29 | volumes:
30 | - /portainer/Files/AppData/Config/ferdium:/data
31 | - /portainer/Files/AppData/Config/ferdium/recipes:/app/recipes
32 | ports:
33 | - 3334:3333
34 | restart: always
35 |
--------------------------------------------------------------------------------
/Template/Stack/filepizza.yml:
--------------------------------------------------------------------------------
1 | services:
2 | filepizza:
3 | image: kern/filepizza:latest
4 | restart: always
5 | build:
6 | context: .
7 | ports:
8 | - 3333:3333
9 | environment:
10 | - PORT=3333
11 | - EXTRA_ICE_SERVERS=turn:localhost:3478
12 | - WEBTORRENT_TRACKERS=ws://localhost:28000
13 | coturn:
14 | image: instrumentisto/coturn:latest
15 | network_mode: host
16 | ports:
17 | - 3478:3478
18 | bittorrent-tracker:
19 | image: henkel/bittorrent-tracker:latest
20 | command: ["npx", "bittorrent-tracker", "--http-hostname", "0.0.0.0", "--ws"]
21 | ports:
22 | - 28000:8000
23 |
--------------------------------------------------------------------------------
/Template/Stack/filestash.yml:
--------------------------------------------------------------------------------
1 | services:
2 | filestash:
3 | container_name: filestash
4 | image: machines/filestash
5 | restart: always
6 | environment:
7 | - APPLICATION_URL=
8 | - GDRIVE_CLIENT_ID=
9 | - GDRIVE_CLIENT_SECRET=
10 | - DROPBOX_CLIENT_ID=
11 | - ONLYOFFICE_URL=http://onlyoffice
12 | ports:
13 | - "8334:8334"
14 | onlyoffice:
15 | container_name: filestash_oods
16 | image: onlyoffice/documentserver
17 | restart: always
18 | security_opt:
19 | - seccomp:unconfined
20 |
--------------------------------------------------------------------------------
/Template/Stack/firefox.yml:
--------------------------------------------------------------------------------
1 | volumes:
2 | firefox:
3 |
4 | services:
5 | firefox:
6 | image: ghcr.io/linuxserver/firefox
7 | container_name: firefox
8 | environment:
9 | - PUID=1026 #change this to for your settings
10 | - PGID=100 #change this to for your settings
11 | - TZ=Europe/Athens #change this to for your location
12 | volumes:
13 | - /portainer/Files/AppData/Config/firefox:/config
14 | ports:
15 | - 3456:3000
16 | shm_size: "1gb"
17 | restart: unless-stopped
18 |
--------------------------------------------------------------------------------
/Template/Stack/fireshare.yml:
--------------------------------------------------------------------------------
1 | services:
2 | fireshare:
3 | container_name: fireshare
4 | image: shaneisrael/fireshare:latest
5 | restart: unless-stopped
6 | ports:
7 | - "8888:80"
8 | volumes:
9 | - /portainer/Files/AppData/Config/fireshare/data:/data
10 | - /portainer/Files/AppData/Config/fireshare/processed:/processed
11 | - /portainer/Files/AppData/Config/fireshare/videos:/videos
12 | environment:
13 | - ADMIN_USERNAME=fireadmin
14 | - ADMIN_PASSWORD=firepwd #please change this
15 | - SECRET_KEY=replace_this_with_some_random_string0x0
16 | - MINUTES_BETWEEN_VIDEO_SCANS=1 #how often should the system scan?
17 | - PUID=998 #change this to match your server settings
18 | - PGID=100 #change this to match your server settings
19 |
--------------------------------------------------------------------------------
/Template/Stack/flood.yml:
--------------------------------------------------------------------------------
1 | services:
2 | qflood:
3 | container_name: qflood
4 | image: hotio/qflood
5 | restart: always
6 | ports:
7 | - "8282:8080"
8 | - "3223:3000"
9 | environment:
10 | - PUID=1000
11 | - PGID=1000
12 | - UMASK=002
13 | - TZ=Europe/Athens
14 | - FLOOD_AUTH=false
15 | volumes:
16 | - /portainer/Files/AppData/Config/flood:/config
17 |
--------------------------------------------------------------------------------
/Template/Stack/flowiseai.yml:
--------------------------------------------------------------------------------
1 | services:
2 | flowise-db:
3 | image: postgres
4 | container_name: FlowiseAI-DB
5 | hostname: flowise-db
6 | mem_limit: 1g
7 | cpu_shares: 768
8 | security_opt:
9 | - no-new-privileges:true
10 | healthcheck:
11 | test: ["CMD", "pg_isready", "-q", "-d", "flowise", "-U", "flowiseuser"]
12 | timeout: 45s
13 | interval: 10s
14 | retries: 10
15 | volumes:
16 | - /portainer/Files/AppData/Config/flowiseai/db:/var/lib/postgresql/data:rw
17 | environment:
18 | POSTGRES_DB: flowise
19 | POSTGRES_USER: flowiseuser
20 | POSTGRES_PASSWORD: flowisepass
21 | restart: on-failure
22 |
23 | flowise:
24 | image: flowiseai/flowise:latest
25 | command: /bin/sh -c "sleep 3; flowise start"
26 | container_name: FlowiseAI
27 | hostname: flowise
28 | mem_limit: 4g
29 | cpu_shares: 768
30 | security_opt:
31 | - no-new-privileges:true
32 | healthcheck:
33 | test: wget --no-verbose --tries=1 --spider http://localhost:3000
34 | ports:
35 | - 8459:3000
36 | volumes:
37 | - /portainer/Files/AppData/Config/data:/root/.flowise:rw
38 | environment:
39 | DEBUG: false
40 | PORT: 3000
41 | FLOWISE_USERNAME: xneo1
42 | FLOWISE_PASSWORD: xneo1portainer
43 | DATABASE_PATH: /root/.flowise
44 | APIKEY_PATH: /root/.flowise
45 | SECRETKEY_PATH: /root/.flowise
46 | LOG_LEVEL: info
47 | LOG_PATH: /root/.flowise/logs
48 | DATABASE_TYPE: postgres
49 | DATABASE_PORT: 5432
50 | DATABASE_HOST: flowise-db
51 | DATABASE_NAME: flowise
52 | DATABASE_USER: flowiseuser
53 | DATABASE_PASSWORD: flowisepass
54 | restart: on-failure
55 | depends_on:
56 | flowise-db:
57 | condition: service_healthy
58 |
--------------------------------------------------------------------------------
/Template/Stack/freeboard.yml:
--------------------------------------------------------------------------------
1 | services:
2 | nginx:
3 | image: nginx:1.13
4 | ports:
5 | - "8003:80"
6 | volumes_from:
7 | - freeboard:ro
8 | freeboard:
9 | image: freeboard
10 | build: .
11 |
--------------------------------------------------------------------------------
/Template/Stack/freescout.yml:
--------------------------------------------------------------------------------
1 | services:
2 | freescout-db:
3 | image: mariadb
4 | container_name: Freescout-DB
5 | hostname: freescout-db
6 | mem_limit: 1g
7 | cpu_shares: 768
8 | security_opt:
9 | - no-new-privileges:true
10 | healthcheck:
11 | test: ["CMD-SHELL", "mysqladmin ping -P 3306 -prootpass | grep 'mysqld is alive' || exit 1"]
12 | volumes:
13 | - /portainer/Files/AppData/Config/freescout/db:/var/lib/mysql:rw
14 | environment:
15 | MYSQL_ROOT_PASSWORD: rootpass
16 | MYSQL_USER: freescoutuser
17 | MYSQL_PASSWORD: freescoutpass
18 | MYSQL_DATABASE: freescout
19 | restart: on-failure:5
20 |
21 | freescout:
22 | image: tiredofit/freescout:latest
23 | container_name: Freescout
24 | hostname: freescout
25 | mem_limit: 1g
26 | cpu_shares: 768
27 | security_opt:
28 | - no-new-privileges:true
29 | healthcheck:
30 | test: curl -f http://localhost:80/ || exit 1
31 | ports:
32 | - 5135:80
33 | volumes:
34 | - /portainer/Files/AppData/Config/freescout/data:/data:rw
35 | - /portainer/Files/AppData/Config/freescout/logs/:/www/logs:rw
36 | environment:
37 | ADMIN_EMAIL: yourownemail
38 | ADMIN_PASS: mariushosting
39 | SITE_URL: https://freescout.yourdomain.com
40 | ENABLE_SSL_PROXY: true
41 | DB_HOST: freescout-db
42 | DB_NAME: freescout
43 | DB_USER: freescoutuser
44 | DB_PASS: freescoutpass
45 | restart: on-failure:5
46 | depends_on:
47 | freescout-db:
48 | condition: service_healthy
49 |
--------------------------------------------------------------------------------
/Template/Stack/frigatenvr.yml:
--------------------------------------------------------------------------------
1 | services:
2 | dev:
3 | container_name: frigate-dev
4 | user: vscode
5 | privileged: true
6 | shm_size: "256mb"
7 | build:
8 | context: .
9 | dockerfile: docker/Dockerfile.dev
10 | volumes:
11 | - /etc/localtime:/etc/localtime:ro
12 | - .:/lab/frigate:cached
13 | - /portainer/Files/AppData/Config/frigatenvr/config.yml:/config/config.yml:ro
14 | - ./debug:/media/frigate
15 | - /dev/bus/usb:/dev/bus/usb
16 | - /dev/dri:/dev/dri # for intel hwaccel, needs to be updated for your hardware
17 | ports:
18 | - "1935:1935"
19 | - "5000:5000"
20 | - "5001:5001"
21 | - "8080:8080"
22 | entrypoint: ["sudo", "/init"]
23 | command: /bin/sh -c "while sleep 1000; do :; done"
24 | mqtt:
25 | container_name: mqtt
26 | image: eclipse-mosquitto:1.6
27 | ports:
28 | - "1883:1883"
29 |
--------------------------------------------------------------------------------
/Template/Stack/funkwhale.yml:
--------------------------------------------------------------------------------
1 | services:
2 | funkwhale:
3 | container_name: funkwhale
4 | restart: unless-stopped
5 | # change version number here when you want to do an upgrade
6 | image: funkwhale/all-in-one:1.2.10
7 | environment:
8 | - PUID=1000
9 | - PGID=1000
10 | # Replace 'your.funkwhale.example' with your actual domain
11 | - FUNKWHALE_HOSTNAME=your.funkwhale.example
12 | # Protocol may also be: http
13 | - FUNKWHALE_PROTOCOL=https
14 | # This limits the upload size
15 | - NGINX_MAX_BODY_SIZE=100M
16 | # Bind to localhost
17 | - FUNKWHALE_API_IP=127.0.0.1
18 | # Container port you want to expose on the host
19 | - FUNKWHALE_API_PORT=5500
20 | # Generate and store a secure secret key for your instance
21 | - DJANGO_SECRET_KEY=$(openssl rand -hex 45)
22 | # Remove this if you expose the container directly on ports 80/443
23 | - NESTED_PROXY=1
24 | volumes:
25 | - /portainer/Files/AppData/Config/funkwhale/data:/data
26 | - /portainer/multimedia/music/dir:/music:ro
27 | ports:
28 | - "5000:80"
29 |
--------------------------------------------------------------------------------
/Template/Stack/fusion.yml:
--------------------------------------------------------------------------------
1 | services:
2 | fusion:
3 | ports:
4 | - 8980:8080
5 | volumes:
6 | - /portainer/Files/AppData/Config/fusion:/data
7 | environment:
8 | - PASSWORD=changeme
9 | image: rook1e404/fusion
10 |
--------------------------------------------------------------------------------
/Template/Stack/gathio.yml:
--------------------------------------------------------------------------------
1 | services:
2 | gathio:
3 | build: .
4 | links:
5 | - mongo
6 | ports:
7 | - 3022:3000
8 | mongo:
9 | image: mongo:latest
10 | volumes:
11 | - /portainer/Files/AppData/Config/gathio/mongodb_data_db:/data/db
12 |
--------------------------------------------------------------------------------
/Template/Stack/ghost.yml:
--------------------------------------------------------------------------------
1 | services:
2 |
3 | ghost:
4 | image: ghost:latest
5 | restart: always
6 | depends_on:
7 | - ghost-db
8 | ports:
9 | - 8080:2368
10 | environment:
11 | # see https://ghost.org/docs/config/#configuration-options
12 | database__client: mysql
13 | database__connection__host: ghost-db
14 | database__connection__user: root
15 | database__connection__password: example
16 | database__connection__database: ghost
17 | # this url value is just an example, and is likely wrong for your environment!
18 | url: http://localhost:8080
19 | #NODE_ENV: development
20 | volumes:
21 | - /portainer/Files/AppData/Config/ghost:/var/lib/ghost/content
22 |
23 | ghost-db:
24 | image: mysql:8.0
25 | restart: always
26 | environment:
27 | MYSQL_ROOT_PASSWORD: example
28 |
--------------------------------------------------------------------------------
/Template/Stack/ghostfolio.yml:
--------------------------------------------------------------------------------
1 | services:
2 | ghostfolio:
3 | image: ghostfolio/ghostfolio:latest
4 | environment:
5 | DATABASE_URL: postgresql://user:postgrespwd@postgres:5432/ghostfolio-db?sslmode=prefer
6 | REDIS_HOST: 'redis'
7 | REDIS_PASSWORD: ${REDIS_PASSWORD}
8 | ACCESS_TOKEN_SALT: bvnbvnbcdfbdrf
9 | ALPHA_VANTAGE_API_KEY:
10 | JWT_SECRET_KEY: szvbt45rtfsg5rtgf
11 | ports:
12 | - 3443:3333
13 | postgres:
14 | image: postgres:12
15 | environment:
16 | POSTGRES_DB: ghostfolio-db
17 | POSTGRES_USER: user
18 | POSTGRES_PASSWORD: postgrespwd
19 | volumes:
20 | - postgres:/var/lib/postgresql/data
21 |
22 | redis:
23 | image: 'redis:alpine'
24 | environment:
25 | REDIS_HOST: 127.0.0.1
26 | REDIS_PORT: 6379
27 | REDIS_PASSWORD: redispwd
28 |
29 | volumes:
30 | postgres:
31 |
--------------------------------------------------------------------------------
/Template/Stack/gitlab.yml:
--------------------------------------------------------------------------------
1 | services:
2 | gitlab:
3 | image: gitlab/gitlab-ce:latest
4 | hostname: ${DOMAIN}
5 | ports:
6 | - "${GITLABSSHPORT}:22"
7 | - "${GITLABPORT80}:80"
8 | - "${GITLABPORT443}:443"
9 | volumes:
10 | - "${APPDATA}/gitlab/data:/var/opt/gitlab"
11 | - "${APPDATA}/gitlab/logs:/var/log/gitlab"
12 | - "${APPDATA}/gitlab/config:/etc/gitlab"
13 | restart: unless-stopped
14 | gitlab-runner:
15 | image: gitlab/gitlab-runner:alpine
16 | volumes:
17 | - "${APPDATA}/gitlab/config-runner:/etc/gitlab-runner"
18 | - "/var/run/docker.sock:/var/run/docker.sock"
19 | restart: unless-stopped
20 |
--------------------------------------------------------------------------------
/Template/Stack/glances.yml:
--------------------------------------------------------------------------------
1 | services:
2 | glances-monitoring:
3 | image: nicolargo/glances:latest-alpine
4 | restart: always
5 | pid: host
6 | volumes:
7 | - /var/run/docker.sock:/var/run/docker.sock
8 | environment:
9 | - "GLANCES_OPT=-w"
10 |
--------------------------------------------------------------------------------
/Template/Stack/goaccessnpm.yml:
--------------------------------------------------------------------------------
1 | services:
2 | goaccessnpm:
3 | image: xavierh/goaccess-for-nginxproxymanager:latest
4 | container_name: goaccessnpm
5 | environment:
6 | - PUID=1000
7 | - PGID=1000
8 | - TZ=Europe/Athens
9 | - SKIP_ARCHIVED_LOGS=False #optional
10 | - BASIC_AUTH=False #optional
11 | - BASIC_AUTH_USERNAME=user #optional
12 | - BASIC_AUTH_PASSWORD=pass #optional
13 | volumes:
14 | - /portainer/Files/AppData/Config/Nginx-Proxy/data/logs:/opt/log
15 | ports:
16 | - 7880:7880
17 | restart: always
18 |
--------------------------------------------------------------------------------
/Template/Stack/gokapi.yml:
--------------------------------------------------------------------------------
1 | services:
2 | gokapi:
3 | container_name: Gokapi
4 | image: f0rc3/gokapi:latest
5 | ports:
6 | - 53842:53842
7 | volumes:
8 | - /portainer/Files/AppData/Config/gokapi/data:/app/data
9 | - /portainer/Files/AppData/Config/gokapi/config:/app/config
10 | restart: on-failure:5
11 |
--------------------------------------------------------------------------------
/Template/Stack/grafana.yml:
--------------------------------------------------------------------------------
1 | services:
2 | grafana:
3 | image: grafana/grafana:latest
4 | ports:
5 | - 3023:3000 ##changed from 3000 to 3023 to decrease possibility of conflict on a system that 3000 is already occupied
6 | restart: unless-stopped
7 | volumes:
8 | - /portainer/Files/AppData/Config/grafana:/var/lib/grafana
9 | user: "0"
10 | ##With this one we install Latest Grafana which in December 13th 2022 is 9.3.1
11 |
--------------------------------------------------------------------------------
/Template/Stack/grocy.yml:
--------------------------------------------------------------------------------
1 | services:
2 | grocy:
3 | image: lscr.io/linuxserver/grocy:latest
4 | container_name: grocy
5 | environment:
6 | PUID: 1000
7 | PGID: 1000
8 | TZ: 'Europe/Athens'
9 | volumes:
10 | - /portainer/Files/AppData/Config/Grocy:/config
11 | ports:
12 | - 9283:80
13 | restart: unless-stopped
14 |
--------------------------------------------------------------------------------
/Template/Stack/hasty-paste.yml:
--------------------------------------------------------------------------------
1 | services:
2 | paste-bin:
3 | container_name: hasty-paste
4 | image: ghcr.io/enchant97/hasty-paste:latest
5 | restart: unless-stopped
6 | volumes:
7 | - portainer/Files/AppData/Config/hasty-paste:/app/data
8 | ports:
9 | - 98000:8000
10 |
11 | volumes:
12 | data:
13 |
--------------------------------------------------------------------------------
/Template/Stack/hauk.yml:
--------------------------------------------------------------------------------
1 | services:
2 | hauk:
3 | image: bilde2910/hauk:latest
4 | container_name: Hauk
5 | hostname: hauk
6 | healthcheck:
7 | test: curl -f http://localhost:80/ || exit 1
8 | ports:
9 | - 7735:80
10 | volumes:
11 | - /portainer/Files/AppData/Config/hauk:/etc/hauk:rw
12 | restart: on-failure
13 |
--------------------------------------------------------------------------------
/Template/Stack/hoarder.yml:
--------------------------------------------------------------------------------
1 | services:
2 | hoarder-web:
3 | image: ghcr.io/hoarder-app/hoarder-web:latest
4 | restart: unless-stopped
5 | volumes:
6 | - /portainer/Files/AppData/Config/hoarder/data:/data
7 | ports:
8 | - 3088:3000
9 | environment:
10 | REDIS_HOST: redis
11 | MEILI_ADDR: http://meilisearch:7700
12 | DATA_DIR: /data
13 | HOARDER_VERSION: latest
14 | NEXTAUTH_SECRET: qxo0NvLCphGhkAu5fBcS1B0MxCeoig8G
15 | NEXTAUTH_URL: http://localhost:3088
16 | MEILI_MASTER_KEY: aqxYm5UWCphGhkAu5fBcSJAPbSzeoiC2X
17 | hoarder-redis:
18 | image: redis:7.2-alpine
19 | restart: unless-stopped
20 | volumes:
21 | - /portainer/Files/AppData/Config/hoarder/redis:/data
22 | hoarder-chrome:
23 | image: gcr.io/zenika-hub/alpine-chrome:123
24 | restart: unless-stopped
25 | command:
26 | - --no-sandbox
27 | - --disable-gpu
28 | - --disable-dev-shm-usage
29 | - --remote-debugging-address=0.0.0.0
30 | - --remote-debugging-port=9222
31 | - --hide-scrollbars
32 | hoarder-meilisearch:
33 | image: getmeili/meilisearch:v1.6
34 | restart: unless-stopped
35 | environment:
36 | MEILI_NO_ANALYTICS: "true"
37 | HOARDER_VERSION: latest
38 | NEXTAUTH_SECRET: qxo0NvLCphGhkAu5fBcS1B0MxCeoig8G
39 | NEXTAUTH_URL: http://localhost:3088
40 | MEILI_MASTER_KEY: aqxYm5UWCphGhkAu5fBcSJAPbSzeoiC2X
41 | volumes:
42 | - /portainer/Files/AppData/Config/hoarder/meilisearch:/meili_data
43 | hoarder-workers:
44 | image: ghcr.io/hoarder-app/hoarder-workers:latest
45 | restart: unless-stopped
46 | volumes:
47 | - /portainer/Files/AppData/Config/hoarder/data:/data
48 | environment:
49 | REDIS_HOST: redis
50 | MEILI_ADDR: http://meilisearch:7700
51 | BROWSER_WEB_URL: http://chrome:9222
52 | DATA_DIR: /data
53 | HOARDER_VERSION: latest
54 | NEXTAUTH_SECRET: qxo0NvLCphGhkAu5fBcS1B0MxCeoig8G
55 | NEXTAUTH_URL: http://localhost:3088
56 | MEILI_MASTER_KEY: aqxYm5UWCphGhkAu5fBcSJAPbSzeoiC2X
57 | # OPENAI_API_KEY: ...
58 | depends_on:
59 | hoarder-web:
60 | condition: service_started
61 |
62 | volumes:
63 | redis:
64 | meilisearch:
65 | data:
66 |
--------------------------------------------------------------------------------
/Template/Stack/homarr.yml:
--------------------------------------------------------------------------------
1 | services:
2 | homarr:
3 | container_name: homarr
4 | image: ghcr.io/ajnart/homarr:latest
5 | restart: unless-stopped
6 | environment:
7 | - TZ=Europe/Athens
8 | - DEFAULT_COLOR_SCHEME=dark
9 | volumes:
10 | - /portainer/Files/AppData/Config/homarr/configs:/app/data/configs
11 | - /portainer/Files/AppData/Config/homarr/icons:/app/public/icons
12 | - /var/run/docker.sock:/var/run/docker.sock
13 | ports:
14 | - 7575:7575
15 |
--------------------------------------------------------------------------------
/Template/Stack/homebridge.yaml:
--------------------------------------------------------------------------------
1 | services:
2 | homebridge:
3 | image: oznu/homebridge:ubuntu
4 | restart: always
5 | network_mode: host
6 | environment:
7 | - PGID=1000
8 | - PUID=1000
9 | - HOMEBRIDGE_CONFIG_UI=1
10 | - HOMEBRIDGE_CONFIG_UI_PORT=8581
11 | - TZ=Europe/Athens
12 | volumes:
13 | - /portainer/Files/AppData/Config/homebridge:/homebridge
14 |
--------------------------------------------------------------------------------
/Template/Stack/homechart.yml:
--------------------------------------------------------------------------------
1 | volumes:
2 | postgres: {}
3 |
4 | services:
5 | homechart:
6 | container_name: homechart
7 | depends_on:
8 | - postgres
9 | environment:
10 | HOMECHART_POSTGRESQL_HOSTNAME: postgres
11 | HOMECHART_POSTGRESQL_PASSWORD: postgres
12 | HOMECHART_POSTGRESQL_USERNAME: postgres
13 | image: ghcr.io/candiddev/homechart:latest
14 | ports:
15 | - "3030:3000"
16 | restart: always
17 | postgres:
18 | environment:
19 | POSTGRES_PASSWORD: postgres
20 | image: postgres:14
21 | restart: always
22 | volumes:
23 | - /portainer/Files/AppData/Config/postgres:/var/lib/postgresql/data
24 |
--------------------------------------------------------------------------------
/Template/Stack/homepage.yml:
--------------------------------------------------------------------------------
1 | services:
2 | homepage:
3 | image: ghcr.io/benphelps/homepage:latest
4 | container_name: homepage
5 | ports:
6 | - 6006:3000
7 | volumes:
8 | - /portainer/Files/AppData/Config/homepage:/app/config
9 | - /var/run/docker.sock:/var/run/docker.sock
10 |
--------------------------------------------------------------------------------
/Template/Stack/ihatemoney.yml:
--------------------------------------------------------------------------------
1 | services:
2 | ihatemoney:
3 | image: ihatemoney/ihatemoney:latest
4 | environment:
5 | - DEBUG=False
6 | - ACTIVATE_ADMIN_DASHBOARD=False
7 | - ACTIVATE_DEMO_PROJECT=True
8 | - ADMIN_PASSWORD=
9 | - ALLOW_PUBLIC_PROJECT_CREATION=True
10 | - BABEL_DEFAULT_TIMEZONE=Europe/Athens
11 | - GREENLET_TEST_CPP=no
12 | - MAIL_DEFAULT_SENDER="Budget manager "
13 | - MAIL_PASSWORD=
14 | - MAIL_PORT=25
15 | - MAIL_SERVER=localhost
16 | - MAIL_USE_SSL=False
17 | - MAIL_USE_TLS=False
18 | - MAIL_USERNAME=
19 | - SECRET_KEY=tralala
20 | - SESSION_COOKIE_SECURE=True
21 | - SHOW_ADMIN_EMAIL=True
22 | - SQLALCHEMY_DATABASE_URI=sqlite:////database/ihatemoney.db
23 | - SQLALCHEMY_TRACK_MODIFICATIONS=False
24 | - ENABLE_CAPTCHA=False
25 | - LEGAL_LINK=
26 | - PORT=8000
27 | - PUID=0
28 | - PGID=0
29 | ports:
30 | - "82303:8000"
31 |
--------------------------------------------------------------------------------
/Template/Stack/immich.yml:
--------------------------------------------------------------------------------
1 | services:
2 | immich-server:
3 | container_name: immich_server
4 | image: altran1502/immich-server:release
5 | entrypoint: ["/bin/sh", "./start-server.sh"]
6 | volumes:
7 | - /portainer/Files/AppData/Config/immich:/usr/src/app/upload
8 | environment:
9 | - NODE_ENV=production
10 | - IMMICH_SERVER_URL=http://immich-server:3001
11 | #- IMMICH_MACHINE_LEARNING_URL=http://immich-machine-learning:3303
12 | - DB_HOSTNAME=immich_postgres
13 | - DB_USERNAME=postgres
14 | - DB_PASSWORD=postgres
15 | - DB_DATABASE_NAME=immich
16 | depends_on:
17 | - immich-redis
18 | - immich-database
19 | restart: always
20 |
21 | immich-microservices:
22 | container_name: immich_microservices
23 | image: altran1502/immich-server:release
24 | entrypoint: ["/bin/sh", "./start-microservices.sh"]
25 | volumes:
26 | - /portainer/Files/AppData/Config/immich:/usr/src/app/upload
27 | environment:
28 | - NODE_ENV=production
29 | - DB_HOSTNAME=immich_postgres
30 | - DB_USERNAME=postgres
31 | - DB_PASSWORD=postgres
32 | - DB_DATABASE_NAME=immich
33 | depends_on:
34 | - immich-redis
35 | - immich-database
36 | restart: always
37 |
38 | immich-machine-learning:
39 | container_name: immich_machine_learning
40 | image: altran1502/immich-machine-learning:release
41 | entrypoint: ["/bin/sh", "./entrypoint.sh"]
42 | volumes:
43 | - /portainer/Files/AppData/Config/immich:/usr/src/app/upload
44 | environment:
45 | - NODE_ENV=production
46 | #- IMMICH_MACHINE_LEARNING_URL=http://immich-machine-learning:3303
47 | depends_on:
48 | - immich-database
49 | restart: always
50 |
51 | immich-web:
52 | container_name: immich_web
53 | image: altran1502/immich-web:release
54 | entrypoint: ["/bin/sh", "./entrypoint.sh"]
55 | environment:
56 | #- IMMICH_WEB_URL=http://immich-web:3300
57 | - VITE_SERVER_ENDPOINT=http://immich-web:2283/api
58 | restart: always
59 |
60 | immich-redis:
61 | container_name: immich_redis
62 | image: redis:6.2
63 | restart: always
64 | environment:
65 | - REDIS_HOSTNAME=immich_redis
66 |
67 | immich-database:
68 | container_name: immich_postgres
69 | image: postgres:14
70 | environment:
71 | - DB_HOSTNAME=immich_postgres
72 | - DB_USERNAME=postgres
73 | - DB_PASSWORD=postgres
74 | - DB_DATABASE_NAME=immich
75 | - POSTGRES_PASSWORD=postgres
76 | - POSTGRES_USER=postgres
77 | - POSTGRES_DB=immich
78 | volumes:
79 | - /portainer/Files/AppData/Config/immich/pgdata:/var/lib/postgresql/data
80 | restart: always
81 |
82 | immich-proxy:
83 | container_name: immich_proxy
84 | image: altran1502/immich-proxy:release
85 | environment:
86 | - IMMICH_SERVER_URL=http://immich-server:3001
87 | - IMMICH_WEB_URL=http://immich-web:3000
88 | ports:
89 | - 2283:8080
90 | logging:
91 | driver: none
92 | depends_on:
93 | - immich-server
94 | restart: always
95 |
--------------------------------------------------------------------------------
/Template/Stack/influxdb2.yml:
--------------------------------------------------------------------------------
1 | services:
2 | influxdb:
3 | image: influxdb:latest
4 | volumes:
5 | # Mount for influxdb data directory and configuration
6 | - /portainer/Files/AppData/Config/influxdb2:/var/lib/influxdb2:rw
7 | ports:
8 | - "8086:8086"
9 | # Use the influx cli to set up an influxdb instance.
10 | influxdb_cli:
11 | links:
12 | - influxdb
13 | image: influxdb:latest
14 | volumes:
15 | # Mount for influxdb data directory and configuration
16 | - /portainer/Files/AppData/Config/influxdb2:/var/lib/influxdb2:rw
17 | - /portainer/Files/AppData/Config/influxdb2/ssl/influxdb-selfsigned.crt:/etc/ssl/influxdb-selfsigned.crt:rw
18 | - /portainer/Files/AppData/Config/influxdb2/ssl/influxdb-selfsigned.key:/etc/ssl/influxdb-selfsigned.key:rw
19 | environment:
20 | - DOCKER_INFLUXDB_INIT_MODE=setup
21 | - DOCKER_INFLUXDB_INIT_USERNAME=myusername
22 | - DOCKER_INFLUXDB_INIT_PASSWORD=passwordpasswordpassword
23 | - DOCKER_INFLUXDB_INIT_ORG=myorg
24 | - DOCKER_INFLUXDB_INIT_BUCKET=mybucket
25 | - DOCKER_INFLUXDB_INIT_ADMIN_TOKEN=mytoken
26 | - INFLUXD_TLS_CERT=/etc/ssl/influxdb-selfsigned.crt
27 | - INFLUXD_TLS_KEY=/etc/ssl/influxdb-selfsigned.key
28 | entrypoint: ["./entrypoint.sh"]
29 | restart: on-failure:10
30 | depends_on:
31 | - influxdb
32 |
--------------------------------------------------------------------------------
/Template/Stack/influxdb2_telegraf.yml:
--------------------------------------------------------------------------------
1 | services:
2 | influxdb:
3 | image: influxdb:latest
4 | volumes:
5 | # Mount for influxdb data directory and configuration
6 | - /portainer/Files/AppData/Config/influxdb2:/var/lib/influxdb2:rw
7 | ports:
8 | - "8086:8086"
9 | # Use the influx cli to set up an influxdb instance.
10 | influxdb_cli:
11 | links:
12 | - influxdb
13 | image: influxdb:latest
14 | volumes:
15 | # Mount for influxdb data directory and configuration
16 | - /portainer/Files/AppData/Config/influxdb2:/var/lib/influxdb2:rw
17 | - /portainer/Files/AppData/Config/influxdb2/ssl/influxdb-selfsigned.crt:/etc/ssl/influxdb-selfsigned.crt:rw
18 | - /portainer/Files/AppData/Config/influxdb2/ssl/influxdb-selfsigned.key:/etc/ssl/influxdb-selfsigned.key:rw
19 | environment:
20 | # Use these same configurations parameters in your telegraf configuration, mytelegraf.conf.
21 | - DOCKER_INFLUXDB_INIT_MODE=setup
22 | - DOCKER_INFLUXDB_INIT_USERNAME=myusername
23 | - DOCKER_INFLUXDB_INIT_PASSWORD=passwordpasswordpassword
24 | - DOCKER_INFLUXDB_INIT_ORG=myorg
25 | - DOCKER_INFLUXDB_INIT_BUCKET=mybucket
26 | - DOCKER_INFLUXDB_INIT_ADMIN_TOKEN=mytoken
27 | - INFLUXD_TLS_CERT=/etc/ssl/influxdb-selfsigned.crt
28 | - INFLUXD_TLS_KEY=/etc/ssl/influxdb-selfsigned.key
29 | entrypoint: ["./entrypoint.sh"]
30 | restart: on-failure:10
31 | depends_on:
32 | - influxdb
33 | telegraf:
34 | image: telegraf
35 | links:
36 | - influxdb
37 | volumes:
38 | # Mount for telegraf config
39 | - /portainer/Files/AppData/Config/telegraf/mytelegraf.conf:/etc/telegraf/telegraf.conf
40 | env_file:
41 | - /portainer/Files/AppData/Config/telegraf/influxv2.env
42 | environment:
43 | - DOCKER_INFLUXDB_INIT_ORG=myorg
44 | - DOCKER_INFLUXDB_INIT_BUCKET=mybucket
45 | - DOCKER_INFLUXDB_INIT_ADMIN_TOKEN=mytoken
46 | depends_on:
47 | - influxdb_cli
48 | volumes:
49 | influxdb2:
50 |
--------------------------------------------------------------------------------
/Template/Stack/invidious.yml:
--------------------------------------------------------------------------------
1 | services:
2 |
3 | invidious:
4 | image: quay.io/invidious/invidious:latest
5 | # image: quay.io/invidious/invidious:latest-arm64 # ARM64/AArch64 devices
6 | restart: unless-stopped
7 | ports:
8 | - 3333:3000
9 | environment:
10 | # Please read the following file for a comprehensive list of all available
11 | # configuration options and their associated syntax:
12 | # https://github.com/iv-org/invidious/blob/master/config/config.example.yml
13 | INVIDIOUS_CONFIG: |
14 | db:
15 | dbname: invidious
16 | user: oneusr
17 | password: onepwd
18 | host: invidious-db
19 | port: 5432
20 | check_tables: true
21 | # external_port:
22 | # domain:
23 | # https_only: false
24 | # statistics_enabled: false
25 | hmac_key: "CHANGE_ME!!"
26 | healthcheck:
27 | test: wget -nv --tries=1 --spider http://127.0.0.1:3000/api/v1/trending || exit 1
28 | interval: 30s
29 | timeout: 5s
30 | retries: 2
31 | logging:
32 | options:
33 | max-size: "1G"
34 | max-file: "4"
35 | depends_on:
36 | - invidious-db
37 |
38 | invidious-db:
39 | image: docker.io/library/postgres:14
40 | restart: unless-stopped
41 | volumes:
42 | - /portainer/Files/AppData/Config/invidious/postgresdata:/var/lib/postgresql/data
43 | - /portainer/Files/AppData/Config/invidious/postgresdata/config/sql:/config/sql
44 | - /portainer/Files/AppData/Config/invidious/postgresdata/init-invidious-db.sh:/docker-entrypoint-initdb.d/init-invidious-db.sh
45 | environment:
46 | POSTGRES_DB: invidious
47 | POSTGRES_USER: theuser
48 | POSTGRES_PASSWORD: thepwd
49 | healthcheck:
50 | test: ["CMD-SHELL", "pg_isready -U $$POSTGRES_USER -d $$POSTGRES_DB"]
51 |
52 | volumes:
53 | postgresdata:
54 |
--------------------------------------------------------------------------------
/Template/Stack/invoice-ninja.yml:
--------------------------------------------------------------------------------
1 | services:
2 | invoice-ninja:
3 | image: invoiceninja/invoiceninja:alpine-4
4 | container_name: invoice-ninja
5 | environment:
6 | - APP_URL=${URL}
7 | - APP_KEY=${APP_KEY}
8 | - MULTI_DB_ENABLED=false
9 | - DB_TYPE=mysql
10 | - DB_HOST=ninja_db
11 | - DB_DATABASE=ninja_db
12 | - DB_USERNAME=invoice_ninja
13 | - DB_PASSWORD=${DATABASE_PASSWORD}
14 | volumes:
15 | - /portainer/Files/AppData/Config/Invoice-Ninja/public:/var/app/public
16 | - /portainer/Files/AppData/Config/Invoice-Ninja/storage:/var/app/storage
17 | ports:
18 | - ${PORT}:9000
19 | restart: unless-stopped
20 | depends_on:
21 | - ninja_db
22 | ninja_db:
23 | image: linuxserver/mariadb
24 | container_name: ninja_db
25 | environment:
26 | - MYSQL_ROOT_PASSWORD=${MYSQL_ROOT_PASSWORD}
27 | - TZ=${TZ}
28 | - MYSQL_DATABASE=ninja_db
29 | - MYSQL_USER=invoice_ninja
30 | - MYSQL_PASSWORD=${DATABASE_PASSWORD}
31 | volumes:
32 | - /portainer/Files/AppData/Config/Invoice-Ninja/DB:/config
33 | restart: unless-stopped
34 |
--------------------------------------------------------------------------------
/Template/Stack/iperf.yml:
--------------------------------------------------------------------------------
1 | services:
2 | iperf3:
3 | restart: unless-stopped
4 | container_name: iperf3-server
5 | ports:
6 | - '5201:5201'
7 | image: networkstatic/iperf3
8 | stdin_open: true # docker run -i
9 | tty: true # docker run -t
10 | command: -s
11 |
--------------------------------------------------------------------------------
/Template/Stack/jellyseer.yml:
--------------------------------------------------------------------------------
1 | services:
2 | jellyseerr:
3 | image: fallenbagel/jellyseerr:latest
4 | container_name: jellyseerr
5 | environment:
6 | - LOG_LEVEL=INFO
7 | - TZ=Europe/Athens
8 | ports:
9 | - 5055:5055
10 | volumes:
11 | - /portainer/Files/AppData/Config/jellyseer:/app/config
12 | restart: unless-stopped
13 |
--------------------------------------------------------------------------------
/Template/Stack/jump.yml:
--------------------------------------------------------------------------------
1 | services:
2 | web:
3 | image: daledavies/jump
4 | ports:
5 | - 9123:8080
6 | volumes:
7 | - /portainer/Files/AppData/Config/jumper/backgrounds:/backgrounds
8 | - /portainer/Files/AppData/Config/jumper/favicon:/favicon
9 | - /portainer/Files/AppData/Config/jumper/search:/search
10 | - /portainer/Files/AppData/Config/jumper/sites:/sites
11 | environment:
12 | SITENAME: 'Custom site name'
13 | OWMAPIKEY: '0a1b2c3d4e5f6a7b8c9d0a1b'
14 | LATLONG: '51.509865,-0.118092'
15 |
--------------------------------------------------------------------------------
/Template/Stack/kapowarr.yml:
--------------------------------------------------------------------------------
1 | services:
2 | kapowarr:
3 | container_name: kapowarr
4 | volumes:
5 | - /portainer/Files/AppData/Config/kapowarr-db:/app/db
6 | - /portainer/comics/downloads:/app/temp_downloads
7 | - /portainer/comics/kapowarr:/content
8 | ports:
9 | - 5656:5656
10 | image: mrcas/kapowarr:latest
11 |
--------------------------------------------------------------------------------
/Template/Stack/kasmworkspaces.yml:
--------------------------------------------------------------------------------
1 | services:
2 | kasm:
3 | image: lscr.io/linuxserver/kasm:latest
4 | container_name: kasm
5 | privileged: true
6 | environment:
7 | - KASM_PORT=7443
8 | - DOCKER_MTU=1500 #optional
9 | volumes:
10 | - /portainer/Files/AppData/Config/kasmworkspaces/data:/opt
11 | - /portainer/Files/AppData/Config/kasmworkspaces/profiles:/profiles #optional
12 | - /dev/input:/dev/input #optional
13 | - /run/udev/data:/run/udev/data #optional
14 | ports:
15 | - 63000:3000
16 | - 7443:443
17 | restart: unless-stopped
18 |
--------------------------------------------------------------------------------
/Template/Stack/kavita.yml:
--------------------------------------------------------------------------------
1 | services:
2 | kavita:
3 | image: kizaing/kavita:latest
4 | volumes:
5 | - ./manga:/manga
6 | - /portainer/Books:/books
7 | - /portainer/Files/AppData/Kavita/Data:/kavita/config
8 | ports:
9 | - "5000:5000"
10 | restart: unless-stopped
11 |
--------------------------------------------------------------------------------
/Template/Stack/kiwix.yml:
--------------------------------------------------------------------------------
1 | services:
2 | kiwix-serve:
3 | image: kiwix/kiwix-serve
4 | volumes:
5 | - /portainer/Files/AppData/Config/kiwixserve:/data
6 | ports:
7 | - '78080:80'
8 | command:
9 | *.zim
10 |
--------------------------------------------------------------------------------
/Template/Stack/koillection.yml:
--------------------------------------------------------------------------------
1 | services:
2 | #FPM image
3 | koillection:
4 | container_name: koillection
5 | image: koillection/koillection:dev
6 | restart: always
7 | ports:
8 | - 181:80
9 | environment:
10 | - APP_ENV=dev
11 | - APP_DEBUG=1
12 | - DB_DRIVER=pdo_pgsql
13 | - DB_NAME=koillection
14 | - DB_HOST=postgresql
15 | - DB_PORT=25432
16 | - DB_USER=postgres
17 | - DB_PASSWORD=password
18 | - DB_VERSION=14
19 | - PHP_TZ=Europe/Athens
20 | - HTTPS_ENABLED=0
21 | depends_on:
22 | - koinmysql
23 | - postgresql
24 | volumes:
25 | - /portainer/Files/AppData/Config/koillection/public/uploads:/var/www/koillection/public/uploads
26 | - /portainer/Files/AppData/Config/koillection:/var/www/koillection
27 |
28 | postgresql:
29 | container_name: postgresql
30 | image: postgres:14
31 | environment:
32 | - POSTGRES_DB=koillection
33 | - POSTGRES_USER=postgres
34 | - POSTGRES_PASSWORD=password
35 | - POSTGRES_HOST_AUTH_METHOD=trust
36 | ports:
37 | - 25432:5432
38 | volumes:
39 | - /portainer/Files/AppData/Config/postgresql:/var/lib/postgresql/data
40 |
41 | koinmysql:
42 | container_name: mysql
43 | image: mysql:latest
44 | command: --default-authentication-plugin=mysql_native_password
45 | environment:
46 | - MYSQL_ROOT_PASSWORD=password
47 | - MYSQL_DATABASE=koillection
48 | ports:
49 | - 43306:3306
50 | volumes:
51 | - /portainer/Files/AppData/Config/koillection/koinmysql:/var/lib/mysql
52 |
--------------------------------------------------------------------------------
/Template/Stack/lazytainer.yml:
--------------------------------------------------------------------------------
1 | services:
2 | lazytainer:
3 | container_name: lazytainer
4 | image: ghcr.io/vmorganp/lazytainer:master
5 | environment:
6 | - PORT=81,82 # comma separated list of ports...or just the one
7 | - LABEL=lazytainer # value of lazytainer.marker for other containers that lazytainer checks
8 | - TIMEOUT=30 # OPTIONAL number of seconds to let container idle
9 | - MINPACKETTHRESH=10 # OPTIONAL number of packets that must be recieved to keepalive/start container
10 | - POLLRATE=1 # OPTIONAL number of seconds to sleep between polls
11 | - VERBOSE=true # probably set this to false unless you're debugging or doing the initial demo
12 | - INTERFACE=eth0 # OPTIONAL interface to listen on - use eth0 in most cases
13 | ports:
14 | - 81:81
15 | - 82:82
16 | volumes:
17 | - /var/run/docker.sock:/var/run/docker.sock:ro
18 |
19 | whoami1:
20 | container_name: whoami1
21 | image: containous/whoami
22 | command: --port 81
23 | network_mode: service:lazytainer
24 | depends_on:
25 | - lazytainer
26 | labels:
27 | - "lazytainer.marker=lazytainer"
28 | - "lazytainer.sleepMethod=pause" # can be either "stop" or "pause", or left blank for stop
29 |
30 | whoami2:
31 | container_name: whoami2
32 | image: containous/whoami
33 | command: --port 82
34 | network_mode: service:lazytainer
35 | depends_on:
36 | - lazytainer
37 | labels:
38 | - "lazytainer.marker=lazytainer"
39 | - "lazytainer.sleepMethod=stop" # can be either "stop" or "pause", or left blank for stop
40 |
--------------------------------------------------------------------------------
/Template/Stack/leantime.yml:
--------------------------------------------------------------------------------
1 | services:
2 | leantimedb:
3 | image: mysql:5.7.39
4 | container_name: mysql_leantime
5 | volumes:
6 | - /portainer/Files/AppData/Config/leantime/db:/var/lib/mysql
7 | restart: always
8 | environment:
9 | MYSQL_ROOT_PASSWORD: 321.qwerty
10 | MYSQL_DATABASE: leantime
11 | MYSQL_USER: admin
12 | MYSQL_PASSWORD: 321.qwerty
13 | command: --character-set-server=utf8 --collation-server=utf8_unicode_ci
14 | web:
15 | image: leantime/leantime
16 | container_name: leantime
17 | environment:
18 | LEAN_DB_HOST: mysql_leantime
19 | LEAN_DB_USER: admin
20 | LEAN_DB_PASSWORD: 321.qwerty
21 | LEAN_DB_DATABASE: leantime
22 | ports:
23 | - 4805:80
24 | depends_on:
25 | - leantimedb
26 | volumes:
27 | db_data: {}
28 |
--------------------------------------------------------------------------------
/Template/Stack/linkstack.yml:
--------------------------------------------------------------------------------
1 | services:
2 |
3 | linkstack:
4 | hostname: linkstack
5 | image: linkstackorg/linkstack:latest
6 | environment:
7 | TZ: Europe/Athens
8 | SERVER_ADMIN: admin@example.com
9 | HTTP_SERVER_NAME: example.com
10 | HTTPS_SERVER_NAME: example.com
11 | LOG_LEVEL: info
12 | PHP_MEMORY_LIMIT: 256M
13 | UPLOAD_MAX_FILESIZE: 8M
14 | volumes:
15 | - linkstack_data:/htdocs
16 | ports:
17 | - 8188:80
18 | - 8190:443
19 | restart: unless-stopped
20 | volumes:
21 | linkstack_data:
22 | driver: local
23 | driver_opts:
24 | type: none
25 | device: "/mnt/extra/portainer/Files/AppData/Config/linkstack"
26 | o: bind
27 |
--------------------------------------------------------------------------------
/Template/Stack/littlelink.yml:
--------------------------------------------------------------------------------
1 | services:
2 | littlelink-server:
3 | image: ghcr.io/techno-tim/littlelink-server:latest
4 | # dockerhub is also supported timothystewart6/littlelink-server
5 | #image: timothystewart6/littlelink-server:latest
6 | container_name: littlelink-server
7 | environment:
8 | - META_TITLE=PUTYOURNAMEHERE
9 | - META_DESCRIPTION=NAME page
10 | - META_AUTHOR=PUTYOURNAMEHERE
11 | - LANG=en
12 | - META_INDEX_STATUS=all
13 | - GA_TRACKING_ID=G-XXXXXXXXXX
14 | - THEME=Dark
15 | - FAVICON_URL=https://pbs.twimg.com/profile_images/1286144221217316864/qIAsKOpB_200x200.jpg
16 | - AVATAR_URL=https://pbs.twimg.com/profile_images/1286144221217316864/qIAsKOpB_200x200.jpg
17 | - AVATAR_2X_URL=https://pbs.twimg.com/profile_images/1286144221217316864/qIAsKOpB_400x400.jpg
18 | - AVATAR_ALT=PUTYOURNAMEHERE Profile Pic
19 | - NAME=PUTYOURNAMEHERE
20 | - BIO=Hey! Just a place where you can connect with me!
21 | - FOOTER=Thanks for stopping by!
22 | - GITHUB=https://github.com/
23 | - TWITTER=https://twitter.com/
24 | - INSTAGRAM=https://www.instagram.com/
25 | - YOUTUBE=https://www.youtube.com/
26 | - TWITCH=https://www.twitch.tv
27 | - DISCORD=https://discord.gg/
28 | - TIKTOK=https://www.tiktok.com/
29 | - KIT=https://kit.co/
30 | - FACEBOOK=https://facebook.com
31 | - FACEBOOK_MESSENGER=https://facebook.com
32 | - LINKED_IN=https://linkedin.com
33 | - PRODUCT_HUNT=https://www.producthunt.com/
34 | - SNAPCHAT=https://www.snapchat.com/
35 | - SPOTIFY=https://www.spotify.com/
36 | - REDDIT=https://www.reddit.com/
37 | - MEDIUM=https://medium.com
38 | - PINTEREST=https://www.pinterest.com/
39 | - EMAIL=you@example.com
40 | - EMAIL_TEXT=Email Me!
41 | - EMAIL_ALT=you@example.com
42 | - EMAIL_ALT_TEXT=Email me!
43 | - SOUND_CLOUD=https://soundcloud.com
44 | - FIGMA=https://figma.com
45 | - TELEGRAM=https://telegram.org/
46 | - TUMBLR=https://www.tumblr.com/
47 | - STEAM=https://steamcommunity.com/
48 | - VIMEO=https://vimeo.com/
49 | - WORDPRESS=https://wordpress.com/
50 | - GOODREADS=https://www.goodreads.com/
51 | - SKOOB=https://www.skoob.com.br/
52 | - LETTERBOXD=https://letterboxd.com/
53 | - MASTODON=https://mastodon.social/
54 | - MICRO_BLOG=https://micro.blog/
55 | - WHATSAPP=https://www.whatsapp.com/
56 | - STRAVA=https://www.strava.com/
57 | - BUYMEACOFFEE=https://www.buymeacoffee.com/
58 | - GITLAB=https://www.gitlab.com/
59 | - PATREON=https://www.patreon.com/technotim
60 | - DEVTO=https://dev.to/
61 | - UMAMI_WEBSITE_ID=xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx
62 | - UMAMI_APP_URL=https://your-umami-app.com
63 | - BUTTON_ORDER=YOUTUBE,TWITCH,TWITTER,GITHUB,INSTAGRAM,DISCORD,FACEBOOK,TIKTOK,KIT,PATREON # use ENV variable names for order, listed buttons will be boosted to the top
64 | - PAYPAL=https://www.paypal.me/user
65 | - SLACK=https://slack.com/
66 | ports:
67 | - 8480:3000
68 | restart: unless-stopped
69 | security_opt:
70 | - no-new-privileges:true
71 |
72 |
--------------------------------------------------------------------------------
/Template/Stack/loggifly.yml:
--------------------------------------------------------------------------------
1 | version: "3.8"
2 | services:
3 | loggifly:
4 | image: ghcr.io/clemcer/loggifly:latest
5 | container_name: loggifly
6 | volumes:
7 | - /var/run/docker.sock:/var/run/docker.sock
8 | # Comment out the following if you are only using environment variables.
9 | # A config template will be downloaded in /config
10 | # edit and rename it to config.yaml or create a new file with your config in it
11 | - /portainer/Files/AppData/Config/loggifly/config.yaml:/config
12 | environment:
13 | - TZ=Europe/Athens
14 | restart: unless-stopped
15 |
--------------------------------------------------------------------------------
/Template/Stack/mailpile.yml:
--------------------------------------------------------------------------------
1 | services:
2 | mailpile:
3 | container_name: mailpile
4 | image: rroemhild/mailpile
5 | volumes:
6 | - /portainer/Files/AppData/Config/mailpile:/root/.local/share/Mailpile
7 | - /portainer/Files/AppData/Config/mailpile/gnu:/root/.gnupg
8 | ports:
9 | - '33411:33411'
10 |
--------------------------------------------------------------------------------
/Template/Stack/markopolis.yml:
--------------------------------------------------------------------------------
1 | services:
2 | markopolis:
3 | image: ghcr.io/rishikanthc/markopolis:2.0.0
4 | ports:
5 | - "81080:80"
6 | environment:
7 | - MARKOPOLIS_DOMAIN=""
8 | - MARKOPOLIS_FRONTEND_URL = ""
9 | - MARKOPOLIS_TITLE="Awesome Notes"
10 | - MARKOPOLIS_MD_PATH=/app/markdown
11 | - MARKOPOLIS_API_KEY=
12 | volumes:
13 | - /portainer/Files/AppData/Config/markopolis:/app/markdown
14 | restart: unless-stopped
15 |
16 | volumes:
17 | markopolis_data:
18 | driver: local
19 |
--------------------------------------------------------------------------------
/Template/Stack/mastodon.yml:
--------------------------------------------------------------------------------
1 | services:
2 | mastodon:
3 | image: lscr.io/linuxserver/mastodon:latest
4 | container_name: mastodon
5 | environment:
6 | - PUID=1000
7 | - PGID=1000
8 | - TZ=Europe/Athens
9 | - LOCAL_DOMAIN=example.com
10 | - REDIS_HOST=redis
11 | - REDIS_PORT=6379
12 | - DB_HOST=db
13 | - DB_USER=mastodon
14 | - DB_NAME=mastodon
15 | - DB_PASS=mastodon
16 | - DB_PORT=5432
17 | - ES_ENABLED=false
18 | - SECRET_KEY_BASE=
19 | - OTP_SECRET=
20 | - VAPID_PRIVATE_KEY=
21 | - VAPID_PUBLIC_KEY=
22 | - SMTP_SERVER=mail.example.com
23 | - SMTP_PORT=25
24 | - SMTP_LOGIN=
25 | - SMTP_PASSWORD=
26 | - SMTP_FROM_ADDRESS=notifications@example.com
27 | - S3_ENABLED=false
28 | - WEB_DOMAIN=mastodon.example.com #optional
29 | - ES_HOST=es #optional
30 | - ES_PORT=9200 #optional
31 | - ES_USER=elastic #optional
32 | - ES_PASS=elastic #optional
33 | - S3_BUCKET= #optional
34 | - AWS_ACCESS_KEY_ID= #optional
35 | - AWS_SECRET_ACCESS_KEY= #optional
36 | - S3_ALIAS_HOST= #optional
37 | - SIDEKIQ_ONLY=false #optional
38 | - SIDEKIQ_QUEUE= #optional
39 | - SIDEKIQ_DEFAULT=false #optional
40 | - SIDEKIQ_THREADS=5 #optional
41 | - DB_POOL=5 #optional
42 | volumes:
43 | - /portainer/Files/AppData/Config/mastodon:/config
44 | ports:
45 | - 80:80
46 | - 443:443
47 | restart: unless-stopped
48 |
--------------------------------------------------------------------------------
/Template/Stack/matomo.yml:
--------------------------------------------------------------------------------
1 | services:
2 | db:
3 | image: mariadb
4 | command: --max-allowed-packet=64MB
5 | restart: always
6 | volumes:
7 | - /portainer/Files/AppData/Config/mariadb/matomo:/var/lib/mysql
8 | environment:
9 | - MYSQL_ROOT_PASSWORD=enterYOURpwd
10 | # env_file:
11 | # - ./db.env
12 |
13 | app:
14 | image: matomo
15 | restart: always
16 | volumes:
17 | - /portainer/Files/AppData/Config/matomo/config:/var/www/html/config
18 | - /portainer/Files/AppData/Config/matomo/logs:/var/www/html/logs
19 | - matomo:/var/www/html
20 | environment:
21 | - MATOMO_DATABASE_HOST=db
22 | # env_file:
23 | # - ./db.env
24 | ports:
25 | - 8282:80 #changed from default 8080
26 |
27 | volumes:
28 | db:
29 | matomo:
30 |
--------------------------------------------------------------------------------
/Template/Stack/mautic.yml:
--------------------------------------------------------------------------------
1 | services:
2 | db:
3 | image: linuxserver/mariadb
4 | container_name: Mautic-DB
5 | hostname: mautic-db
6 | security_opt:
7 | - no-new-privileges:true
8 | healthcheck:
9 | test: out=$$(mysqladmin ping -h localhost -P 3306 -u root --password=rootpass 2>&1); echo $$out | grep 'mysqld is alive' || { echo $$out; exit 1; }
10 | environment:
11 | - PUID=1000
12 | - PGID=1000
13 | - TZ=Europe/Athens
14 | - MYSQL_ROOT_PASSWORD=rootpass
15 | - MYSQL_DATABASE=mautic
16 | - MYSQL_USER=mauticuser
17 | - MYSQL_PASSWORD=mauticpass
18 | volumes:
19 | - /portainer/Files/AppData/Config/mautic/db:/config
20 | restart: always
21 |
22 | mautic:
23 | image: mautic/mautic:v4
24 | container_name: Mautic
25 | hostname: mautic
26 | security_opt:
27 | - no-new-privileges:true
28 | healthcheck:
29 | test: wget --no-verbose --tries=1 --spider http://localhost:80/ || exit 1
30 | ports:
31 | - 9855:80
32 | environment:
33 | - MAUTIC_DB_HOST=mautic-db
34 | - MAUTIC_DB_USER=mauticuser
35 | - MAUTIC_DB_PASSWORD=mauticpass
36 | - MAUTIC_DB_NAME=mautic
37 | - MAUTIC_RUN_CRON_JOBS=true
38 | volumes:
39 | - /portainer/Files/AppData/Config/mautic/data:/var/www/html
40 | restart: always
41 | depends_on:
42 | db:
43 | condition: service_healthy
44 |
--------------------------------------------------------------------------------
/Template/Stack/medama.yml:
--------------------------------------------------------------------------------
1 | services:
2 | medama:
3 | image: ghcr.io/medama-io/medama:latest
4 | ports:
5 | - "8010:8080"
6 | volumes:
7 | - /portainer/Files/AppData/Config/medama:/app/data
8 | volumes:
9 | medama-data:
10 |
--------------------------------------------------------------------------------
/Template/Stack/media_server_plex.yml:
--------------------------------------------------------------------------------
1 | services:
2 | plex:
3 | container_name: plex
4 | image: hotio/plex
5 | restart: unless-stopped
6 | ports:
7 | - "${PLEXPORT}:32400"
8 | environment:
9 | - "PUID=${PUID}"
10 | - "PGID=${PGID}"
11 | - "UMASK=${UMASK}"
12 | - "TZ=${TZ}"
13 | - "PLEX_CLAIM=${PLEXCLAIM}"
14 | - "ADVERTISE_IP=${ADVERTISEIP}"
15 | - "ALLOWED_NETWORKS=${ALLOWEDNETWORKS}"
16 | - "PLEX_PASS=${PLEXPASS}"
17 | volumes:
18 | - "${APPDATA}/plex:/config"
19 | - "${TRANSCODE}:/transcode"
20 | - "${MOVIES}:/movie"
21 | - "${TV}:/tv"
22 | - "${MUSIC}:/music"
23 | tautulli:
24 | container_name: tautulli
25 | image: hotio/tautulli
26 | restart: unless-stopped
27 | ports:
28 | - "${TAUTULLIPORT}:8181"
29 | environment:
30 | - "PUID=${PUID}"
31 | - "PGID=${PGID}"
32 | - "UMASK=${UMASK}"
33 | - "TZ=${TZ}"
34 | volumes:
35 | - "${APPDATA}/tautulli:/config"
36 | ombi:
37 | container_name: ombi
38 | image: hotio/ombi
39 | restart: unless-stopped
40 | ports:
41 | - "${OMBIPORT}:5000"
42 | environment:
43 | - "PUID=${PUID}"
44 | - "PGID=${PGID}"
45 | - "UMASK=${UMASK}"
46 | - "TZ=${TZ}"
47 | volumes:
48 | - "${APPDATA}/ombi:/config"
49 |
--------------------------------------------------------------------------------
/Template/Stack/medusa.yml:
--------------------------------------------------------------------------------
1 | services:
2 | medusa-backend:
3 | build:
4 | dockerfile: Dockerfile.prod
5 | image: backend:latest
6 | container_name: medusa-server
7 | restart: always
8 | depends_on:
9 | - medusa-postgres
10 | - medusa-redis
11 | environment:
12 | DATABASE_URL: postgres://postgres:postgres@postgres:5432/medusa-docker
13 | NODE_ENV: production
14 | STORE_CORS: http://localhost
15 | volumes:
16 | - /portainer/Files/AppData/Config/medusacms/backend:/app/medusa
17 | - /portainer/Files/AppData/Config/medusacms/backend/node_modules:/app/medusa/node_modules
18 | ports:
19 | - "9009:9000"
20 |
21 | medusa-postgres:
22 | image: postgres:13.9-alpine
23 | restart: always
24 | environment:
25 | POSTGRES_USER: postgres
26 | POSTGRES_PASSWORD: postgres
27 | POSTGRES_DB: medusa-docker
28 |
29 | medusa-redis:
30 | redis:latest
31 | restart: always
32 |
33 | medusa-admin:
34 | build:
35 | context: ./admin
36 | dockerfile: Dockerfile.prod
37 | admin:latest
38 | restart: always
39 | depends_on:
40 | - medusa-backend
41 | container_name: medusa-admin
42 | environment:
43 | NODE_ENV: production
44 | NODE_OPTIONS: --openssl-legacy-provider
45 | ports:
46 | - "7007:80"
47 |
48 | medusa-storefront:
49 | build:
50 | dockerfile: Dockerfile.prod
51 | storefront:latest
52 | container_name: medusa-storefront
53 | restart: always
54 | environment:
55 | NODE_ENV: production
56 | volumes:
57 | - /portainer/Files/AppData/Config/medusacms/storefront:/app/storefront
58 | - /portainer/Files/AppData/Config/medusacms/storefront/node_modules:/app/storefront/node_modules
59 | depends_on:
60 | - medusa-backend
61 | ports:
62 | - "808:80"
63 |
--------------------------------------------------------------------------------
/Template/Stack/meilisearch.yml:
--------------------------------------------------------------------------------
1 | services:
2 | meilisearch:
3 | container_name: meilisearch
4 | restart: unless-stopped
5 | image: getmeili/meilisearch:latest
6 | environment:
7 | - http_proxy
8 | - https_proxy
9 | - MEILI_MASTER_KEY=${MEILI_MASTER_KEY:-masterKey}
10 | - MEILI_NO_ANALYTICS=${MEILI_NO_ANALYTICS:-true}
11 | - MEILI_ENV=${MEILI_ENV:-development}
12 | - MEILI_LOG_LEVEL
13 | - MEILI_DB_PATH=${MEILI_DB_PATH:-/data.ms}
14 | ports:
15 | - 7700:7700
16 | networks:
17 | - meilisearch
18 | volumes:
19 | - /portainer/Files/AppData/Config/meilisearch/data.ms:/data.ms
20 |
21 |
--------------------------------------------------------------------------------
/Template/Stack/meshcentral.yml:
--------------------------------------------------------------------------------
1 | services:
2 | meshcentral-mongodb:
3 | container_name: meshcentral_db
4 | restart: always
5 | image: mongo:latest
6 | expose:
7 | - 27017
8 | volumes:
9 | - /portainer/Files/AppData/Config/meshcentral/database:/data/db
10 | meshcentral:
11 | restart: always
12 | container_name: meshcentral
13 | depends_on:
14 | - 'meshcentral-mongodb'
15 | image: typhonragewind/meshcentral
16 | ports:
17 | - 8086:443
18 | - 8087:800
19 | environment:
20 | - HOSTNAME=my.domain.com #your hostname
21 | - REVERSE_PROXY=false #set to your reverse proxy IP if you want to put meshcentral behind a reverse proxy
22 | - REVERSE_PROXY_TLS_PORT=443
23 | - IFRAME=false #set to true if you wish to enable iframe support
24 | - ALLOW_NEW_ACCOUNTS=true #set to false if you want disable self-service creation of new accounts besides the first (admin)
25 | - WEBRTC=false #set to true to enable WebRTC - per documentation it is not officially released with meshcentral, but is solid enough to work with. Use with caution
26 | - NODE_ENV=production
27 | volumes:
28 | - /portainer/Files/AppData/Config/meshcentral/data:/opt/meshcentral/meshcentral-data
29 | - /portainer/Files/AppData/Config/meshcentral/user_files:/opt/meshcentral/meshcentral-files
30 |
--------------------------------------------------------------------------------
/Template/Stack/midarr.yml:
--------------------------------------------------------------------------------
1 | services:
2 |
3 | midarr:
4 | container_name: midarr
5 | build: .
6 | ports:
7 | - 4000:4000
8 | volumes:
9 | - /portainer/Files/AppData/Config/midarr/:/app
10 | - /portainer/Files/AppData/Config/midarr/movies:/movies
11 | - /portainer/Files/AppData/Config/midarr/series:/series
12 | environment:
13 | - APP_URL=http://midarr:4000
14 | - SETUP_ADMIN_EMAIL=admin@email.com
15 | - SETUP_ADMIN_NAME=admin
16 | - SETUP_ADMIN_PASSWORD=passwordpassword
17 | - RADARR_BASE_URL=http://radarr:7878
18 | - RADARR_API_KEY=d031e8c9b9df4b2fab311d1c3b3fa2c5
19 | - SONARR_BASE_URL=http://sonarr:8989
20 | - SONARR_API_KEY=1accda4476394bfcaddefe8c4fd77d4a
21 | command: bash -c "chmod u+x misc/entry-point-local.sh && ./misc/entry-point-local.sh"
22 |
--------------------------------------------------------------------------------
/Template/Stack/miniflux.yml:
--------------------------------------------------------------------------------
1 | services:
2 | miniflux-db:
3 | image: postgres:15
4 | container_name: Miniflux-DB
5 | hostname: miniflux-db
6 | security_opt:
7 | - no-new-privileges:true
8 | healthcheck:
9 | test: ["CMD", "pg_isready", "-U", "miniflux"]
10 | timeout: 45s
11 | interval: 10s
12 | retries: 10
13 | start_period: 30s
14 | user: 1026:100
15 | volumes:
16 | - /portainer/Files/AppData/Config/minifluxdb:/var/lib/postgresql/data
17 | environment:
18 | - POSTGRES_DB=miniflux
19 | - POSTGRES_USER=minifluxuser
20 | - POSTGRES_PASSWORD=minifluxpass
21 | restart: always
22 |
23 | miniflux:
24 | image: miniflux/miniflux:latest
25 | container_name: Miniflux
26 | hostname: miniflux
27 | security_opt:
28 | - no-new-privileges:true
29 | healthcheck:
30 | test: ["CMD", "/usr/bin/miniflux", "-healthcheck", "auto"]
31 | user: 1026:100
32 | ports:
33 | - 8645:8080
34 | environment:
35 | - DATABASE_URL=postgres://minifluxuser:minifluxpass@miniflux-db/miniflux?sslmode=disable
36 | - RUN_MIGRATIONS=1
37 | - CREATE_ADMIN=1
38 | - ADMIN_USERNAME=admin
39 | - ADMIN_PASSWORD=adminpass
40 | restart: always
41 | depends_on:
42 | miniflux-db:
43 | condition: service_healthy
44 |
--------------------------------------------------------------------------------
/Template/Stack/monica.yml:
--------------------------------------------------------------------------------
1 | services:
2 | monica-app:
3 | image: monica:apache
4 | depends_on:
5 | - monica-db
6 | ports:
7 | - 818:80
8 | environment:
9 | - DB_HOST=db
10 | - DB_USERNAME=monica
11 | - DB_PASSWORD=secret
12 | volumes:
13 | - /portainer/Files/AppData/Config/monica:/var/www/html/storage
14 | restart: always
15 |
16 | monica-db:
17 | image: mysql:5.7
18 | environment:
19 | - MYSQL_RANDOM_ROOT_PASSWORD=true
20 | - MYSQL_DATABASE=monica
21 | - MYSQL_USER=monica
22 | - MYSQL_PASSWORD=secret
23 | volumes:
24 | - /portainer/Files/AppData/Config/monica/mysql:/var/lib/mysql
25 | restart: always
26 |
27 | volumes:
28 | data:
29 | name: data
30 | mysql:
31 | name: mysql
32 |
--------------------------------------------------------------------------------
/Template/Stack/moodle.yml:
--------------------------------------------------------------------------------
1 | services:
2 | moodle-db:
3 | image: linuxserver/mariadb
4 | container_name: Moodle-DB
5 | hostname: moodle-db
6 | security_opt:
7 | - no-new-privileges:true
8 | healthcheck:
9 | test: out=$$(mysqladmin ping -h localhost -P 3306 -u root --password=rootpass 2>&1); echo $$out | grep 'mysqld is alive' || { echo $$out; exit 1; }
10 | environment:
11 | - PUID=1026
12 | - PGID=100
13 | - TZ=Europe/Athens
14 | - MYSQL_ROOT_PASSWORD=rootpass
15 | - MYSQL_DATABASE=moodle
16 | - MYSQL_USER=moodleuser
17 | - MYSQL_PASSWORD=moodlepass
18 | volumes:
19 | - /portainer/Files/AppData/Config/moodle/db:/config
20 | restart: always
21 |
22 | moodle:
23 | image: bitnami/moodle:latest
24 | container_name: Moodle
25 | hostname: moodle
26 | security_opt:
27 | - no-new-privileges:true
28 | ports:
29 | - 9490:8080
30 | environment:
31 | - MOODLE_DATABASE_HOST=moodle-db
32 | - MOODLE_DATABASE_PORT_NUMBER=3306
33 | - MOODLE_DATABASE_NAME=moodle
34 | - MOODLE_DATABASE_USER=moodleuser
35 | - MOODLE_DATABASE_PASSWORD=moodlepass
36 | - PHP_MEMORY_LIMIT=512M
37 | - MOODLE_USERNAME=marius
38 | - MOODLE_PASSWORD=mariushosting
39 | - MOODLE_SITE_NAME=Learn With Marius
40 | #- MOODLE_SMTP_HOST=SMTPhost
41 | #- MOODLE_SMTP_PORT=SMTPport
42 | #- MOODLE_SMTP_USER=SMTPaccountuser
43 | #- MOODLE_SMTP_PASSWORD=SMTPaccountpassword
44 | #- MOODLE_SMTP_PROTOCOL=SMTPprotocol
45 | volumes:
46 | - /portainer/Files/AppData/Config/moodle/data1:/bitnami/moodle
47 | - /portainer/Files/AppData/Config/moodle/data2:/bitnami/moodledata
48 | restart: always
49 | depends_on:
50 | moodle-db:
51 | condition: service_healthy
52 |
--------------------------------------------------------------------------------
/Template/Stack/n8n.yml:
--------------------------------------------------------------------------------
1 | services:
2 | n8n:
3 | image: n8nio/n8n
4 | ports:
5 | - "5678:5678"
6 | environment:
7 | - N8N_BASIC_AUTH_ACTIVE=true
8 | - N8N_BASIC_AUTH_USER=user
9 | - N8N_BASIC_AUTH_PASSWORD=password
10 | - DB_TYPE=postgresdb
11 | - DB_POSTGRESDB_HOST=db
12 | - DB_POSTGRESDB_PORT=5432
13 | - DB_POSTGRESDB_DATABASE=n8n
14 | - DB_POSTGRESDB_USER=n8n
15 | - DB_POSTGRESDB_PASSWORD=n8n
16 | - NODE_FUNCTION_ALLOW_EXTERNAL=axios,qs
17 | - N8N_SECURE_COOKIE=false
18 | depends_on:
19 | - db
20 | restart: unless-stopped
21 |
22 | db:
23 | image: postgres:12
24 | volumes:
25 | - db-data:/var/lib/postgresql/data
26 | environment:
27 | - POSTGRES_USER=n8n
28 | - POSTGRES_PASSWORD=n8n
29 | - POSTGRES_DB=n8n
30 | restart: unless-stopped
31 |
32 | volumes:
33 | db-data:
34 |
--------------------------------------------------------------------------------
/Template/Stack/navidrome.yml:
--------------------------------------------------------------------------------
1 | services:
2 | navidrome:
3 | container_name: navidrome
4 | image: deluan/navidrome:latest
5 | ports:
6 | - "4533:4533"
7 | environment:
8 | # Optional: put your config options customization here. Examples:
9 | ND_SCANSCHEDULE: 1h
10 | ND_LOGLEVEL: info
11 | ND_BASEURL: ""
12 | volumes:
13 | - "/portainer/Files/AppData/Config/navidrome:/data"
14 | - "/path/to/your/music/folder:/music:ro"
15 |
--------------------------------------------------------------------------------
/Template/Stack/neko.yml:
--------------------------------------------------------------------------------
1 | #
2 | # This docker compose needs .env file.
3 | # Copy .env.example to .env and modify.
4 | #
5 |
6 | networks:
7 | default:
8 | attachable: "true"
9 | name: "${NEKO_ROOMS_TRAEFIK_NETWORK}"
10 |
11 | services:
12 | traefik:
13 | image: "traefik:2.4"
14 | restart: "unless-stopped"
15 | environment:
16 | - "TZ"
17 | ports:
18 | - "580:80"
19 | - "5443:443"
20 | volumes:
21 | - "/var/run/docker.sock:/var/run/docker.sock:ro"
22 | - "/portainer/Files/AppData/Config/traefik/traefik.yml:/etc/traefik/traefik.yml:ro"
23 | - "/portainer/Files/AppData/Config/traefik/usersfile:/usersfile:ro"
24 | - "/portainer/Files/AppData/Config/traefik/acme.json:/acme.json"
25 | - "/portainer/Files/AppData/Config/traefik/config:/config"
26 |
27 | neko-rooms:
28 | image: "m1k1o/neko-rooms:latest"
29 | restart: "unless-stopped"
30 | environment:
31 | - "TZ"
32 | - "NEKO_ROOMS_EPR"
33 | - "NEKO_ROOMS_NAT1TO1"
34 | - "NEKO_ROOMS_TRAEFIK_DOMAIN"
35 | - "NEKO_ROOMS_TRAEFIK_ENTRYPOINT"
36 | - "NEKO_ROOMS_TRAEFIK_CERTRESOLVER"
37 | - "NEKO_ROOMS_TRAEFIK_NETWORK"
38 | volumes:
39 | - "/var/run/docker.sock:/var/run/docker.sock"
40 | labels:
41 | - "traefik.enable=true"
42 | - "traefik.http.services.neko-rooms-frontend.loadbalancer.server.port=8080"
43 | - "traefik.http.routers.neko-rooms.entrypoints=${NEKO_ROOMS_TRAEFIK_ENTRYPOINT}"
44 | - "traefik.http.routers.neko-rooms.rule=Host(`${NEKO_ROOMS_TRAEFIK_DOMAIN}`)"
45 | - "traefik.http.routers.neko-rooms.tls=true"
46 | - "traefik.http.routers.neko-rooms.tls.certresolver=${NEKO_ROOMS_TRAEFIK_CERTRESOLVER}"
47 | - "traefik.http.routers.neko-rooms.middlewares=basicauth@file"
48 |
--------------------------------------------------------------------------------
/Template/Stack/netalertx.yml:
--------------------------------------------------------------------------------
1 | services:
2 | netalertx:
3 | container_name: netalertx
4 | # use the below line if you want to test the latest dev image
5 | # image: "jokobsk/netalertx-dev:latest"
6 | image: "jokobsk/netalertx:latest"
7 | network_mode: "host"
8 | restart: unless-stopped
9 | volumes:
10 | - /portainer/Files/AppData/Config/netalertx/config:/app/config
11 | - /portainer/Files/AppData/Config/netalertx/db:/app/db
12 | environment:
13 | - TZ=Europe/Athens
14 | - PORT=20211
15 |
--------------------------------------------------------------------------------
/Template/Stack/netbootxyz.yml:
--------------------------------------------------------------------------------
1 | services:
2 | netbootxyz:
3 | image: lscr.io/linuxserver/netbootxyz:latest
4 | container_name: netbootxyz
5 | environment:
6 | - PUID=1000
7 | - PGID=1000
8 | - TZ=Europe/Athens
9 | - PORT_RANGE=30000:30010 #optional
10 | - SUBFOLDER=/ #optional
11 | volumes:
12 | - /portainer/Files/AppData/Config/netbootxyz/config:/config # optional
13 | - /portainer/Files/AppData/Config/netbootxyz/assets:/assets # optional
14 | ports:
15 | - 3300:3000
16 | - 369:69/udp
17 | - 38080:80 #optional
18 | restart: unless-stopped
19 |
--------------------------------------------------------------------------------
/Template/Stack/nextcloud.yml:
--------------------------------------------------------------------------------
1 | services:
2 | nextcloud:
3 | image: linuxserver/nextcloud
4 | container_name: nextcloud
5 | environment:
6 | - PUID=${PUID}
7 | - PGID=${PGID}
8 | - TZ=${TZ}
9 | volumes:
10 | - /portainer/Files/AppData/Config/Nextcloud/Config:/config
11 | ports:
12 | - ${PORT}:443
13 | restart: unless-stopped
14 | depends_on:
15 | - nextcloud_db
16 | nextcloud_db:
17 | image: linuxserver/mariadb
18 | container_name: nextcloud_db
19 | environment:
20 | - PUID=${PUID}
21 | - PGID=${PGID}
22 | - MYSQL_ROOT_PASSWORD=${MYSQL_ROOT_PASSWORD}
23 | - TZ=${Timezone}
24 | - MYSQL_DATABASE=nextcloud_db
25 | - MYSQL_USER=nextcloud
26 | - MYSQL_PASSWORD=${DATABASE_PASSWORD}
27 | ports:
28 | - 3306:3306
29 | volumes:
30 | - /portainer/AppData/Config/Nextcloud/DB:/config
31 | restart: unless-stopped
32 |
--------------------------------------------------------------------------------
/Template/Stack/nexterm.yml:
--------------------------------------------------------------------------------
1 | services:
2 | nexterm:
3 | ports:
4 | - "6989:6989"
5 | restart: always
6 | volumes:
7 | - /portainer/Files/AppData/Config/nexterm:/app/data
8 | image: germannewsmaker/nexterm:1.0.2-OPEN-PREVIEW
9 | volumes:
10 | nexterm:
11 |
--------------------------------------------------------------------------------
/Template/Stack/nocodb.yml:
--------------------------------------------------------------------------------
1 | services:
2 | nocodb:
3 | depends_on:
4 | root_db:
5 | condition: service_healthy
6 | environment:
7 | NC_DB: "mysql2://root_db:3306?u=noco&p=password&d=root_db"
8 | image: "nocodb/nocodb:latest"
9 | ports:
10 | - "8585:8080"
11 | restart: always
12 | volumes:
13 | - /portainer/Files/AppData/Config/nocodb/nc_data:/usr/app/data
14 | root_db:
15 | environment:
16 | MYSQL_DATABASE: root_db
17 | MYSQL_PASSWORD: password
18 | MYSQL_ROOT_PASSWORD: password
19 | MYSQL_USER: noco
20 | healthcheck:
21 | retries: 10
22 | test:
23 | - CMD
24 | - mysqladmin
25 | - ping
26 | - "-h"
27 | - localhost
28 | timeout: 20s
29 | image: "mysql:5.7"
30 | restart: always
31 | volumes:
32 | - /portainer/Files/AppData/Config/nocodb/db_data:/var/lib/mysql
33 | # below line shows how to change charset and collation
34 | # uncomment it if necessary
35 | # command: --character-set-server=utf8mb4 --collation-server=utf8mb4_unicode_ci
36 |
--------------------------------------------------------------------------------
/Template/Stack/nodered.yml:
--------------------------------------------------------------------------------
1 | services:
2 | node-red:
3 | image: nodered/node-red:latest
4 | environment:
5 | - TZ=Europe/Athens
6 | ports:
7 | - "1880:1880"
8 | networks:
9 | - node-red-net
10 | volumes:
11 | - /portainer/Files/AppData/Config/nodered:/data
12 | networks:
13 | node-red-net:
14 |
--------------------------------------------------------------------------------
/Template/Stack/npm.yml:
--------------------------------------------------------------------------------
1 | services:
2 | npm:
3 | image: 'jc21/nginx-proxy-manager:latest'
4 | container_name: nginx-proxy-manager
5 | restart: unless-stopped
6 | ports:
7 | # These ports are in format :
8 | - '80:80' # Public HTTP Port
9 | - '443:443' # Public HTTPS Port
10 | - '81:81' # Admin Web Port
11 | # Add any other Stream port you want to expose
12 | # - '21:21' # FTP
13 |
14 | # Uncomment the next line if you uncomment anything in the section
15 | environment:
16 | # Uncomment this if you want to change the location of
17 | # the SQLite DB file within the container
18 | DB_SQLITE_FILE: "/data/database.sqlite"
19 |
20 | # Uncomment this if IPv6 is not enabled on your host
21 | # DISABLE_IPV6: 'true'
22 |
23 | volumes:
24 | - /portainer/Files/AppData/Config/npm/data:/data
25 | - /portainer/Files/AppData/Config/npm/letsencrypt:/etc/letsencrypt
26 |
--------------------------------------------------------------------------------
/Template/Stack/ombi.yml:
--------------------------------------------------------------------------------
1 | services:
2 | ombi:
3 | image: lscr.io/linuxserver/ombi:latest
4 | container_name: ombi
5 | environment:
6 | - PUID=1000
7 | - PGID=1000
8 | - TZ=Europe/Athens
9 | - BASE_URL=/ombi #optional
10 | volumes:
11 | - /portainer/Files/AppData/Config/ombi:/config
12 | ports:
13 | - 3579:3579
14 | restart: unless-stopped
15 |
--------------------------------------------------------------------------------
/Template/Stack/openbudgeteer.yml:
--------------------------------------------------------------------------------
1 | networks:
2 | app-global:
3 | external: true
4 | mysql-internal:
5 |
6 |
7 | services:
8 | openbudgeteer:
9 | image: axelander/openbudgeteer
10 | container_name: openbudgeteer
11 | ports:
12 | - 8081:80
13 | environment:
14 | - Connection:Server=openbudgeteer-mysql
15 | - Connection:Port=3306
16 | - Connection:Database=openbudgeteer
17 | - Connection:User=openbudgeteer
18 | - Connection:Password=openbudgeteer
19 | - AppSettings:Culture=en-US
20 | depends_on:
21 | - mysql
22 | networks:
23 | - app-global
24 | - mysql-internal
25 |
26 | mysql:
27 | image: mysql
28 | container_name: openbudgeteer-mysql
29 | environment:
30 | MYSQL_ROOT_PASSWORD: myRootPassword
31 | volumes:
32 | - /portainer/Files/AppData/Config/openbudgeteer/data:/var/lib/mysql
33 | networks:
34 | - mysql-internal
35 |
36 | phpmyadmin:
37 | image: phpmyadmin/phpmyadmin
38 | container_name: openbudgeteer-phpmyadmin
39 | links:
40 | - mysql:db
41 | ports:
42 | - 8080:80
43 | networks:
44 | - app-global
45 | - mysql-internal
46 |
47 | volumes:
48 | data:
49 |
50 |
--------------------------------------------------------------------------------
/Template/Stack/opnform.yml:
--------------------------------------------------------------------------------
1 | services:
2 | opnform:
3 | container_name: opnform
4 | volumes:
5 | - /portainer/Files/AppData/Config/opnform:/persist
6 | ports:
7 | - 8380:80
8 | image: jhumanj/opnform
9 | networks: {}
10 |
--------------------------------------------------------------------------------
/Template/Stack/organizr.yml:
--------------------------------------------------------------------------------
1 | services:
2 | organizr:
3 | image: linuxserver/organizr
4 | container_name: organizr
5 | environment:
6 | - PUID=1000
7 | - PGID=1000
8 | - TZ=Europe/Athens
9 | volumes:
10 | - /portainer/Files/AppData/Config/organizr:/config
11 | ports:
12 | - 9983:80
13 | restart: unless-stopped
14 |
--------------------------------------------------------------------------------
/Template/Stack/ory-kratos-oathkeeper.yml:
--------------------------------------------------------------------------------
1 | services:
2 | kratos:
3 | environment:
4 | - SERVE_PUBLIC_BASE_URL=http://127.0.0.1:4455/.ory/kratos/public/
5 |
6 | kratos-selfservice-ui-node:
7 | environment:
8 | - PORT=4435
9 | - KRATOS_BROWSER_URL=http://127.0.0.1:4455/.ory/kratos/public
10 | - JWKS_URL=http://oathkeeper:4456/.well-known/jwks.json
11 | - SECURITY_MODE=jwks
12 |
13 | oathkeeper:
14 | image: oryd/oathkeeper:v0.40
15 | depends_on:
16 | - kratos
17 | ports:
18 | - 4455:4455
19 | - 4456:4456
20 | command:
21 | serve proxy -c "/etc/config/oathkeeper/oathkeeper.yml"
22 | environment:
23 | - LOG_LEVEL=debug
24 | restart: on-failure
25 | networks:
26 | - intranet
27 | volumes:
28 | - /portainer/Files/AppData/Config/oathkeeper:/etc/config/oathkeeper
29 |
--------------------------------------------------------------------------------
/Template/Stack/ory-kratos-standalone.yml:
--------------------------------------------------------------------------------
1 | services:
2 | kratos-selfservice-ui-node:
3 | ports:
4 | - "4455:4455"
5 | environment:
6 | - PORT=4455
7 | - SECURITY_MODE=
8 | - KRATOS_BROWSER_URL=http://127.0.0.1:4433/
9 |
--------------------------------------------------------------------------------
/Template/Stack/overseerr.yml:
--------------------------------------------------------------------------------
1 | services:
2 | overseerr:
3 | image: lscr.io/linuxserver/overseerr:latest
4 | container_name: overseerr
5 | environment:
6 | - PUID=1000
7 | - PGID=1000
8 | - TZ=Europe/Athens
9 | volumes:
10 | - /portainer/Files/AppData/Config/overseer:/config
11 | ports:
12 | - 5055:5055
13 | restart: unless-stopped
14 |
--------------------------------------------------------------------------------
/Template/Stack/owncloud.yml:
--------------------------------------------------------------------------------
1 | services:
2 | nextcloud:
3 | image: owncloud/server:latest
4 | container_name: owncloud
5 | environment:
6 | - PUID=${PUID}
7 | - PGID=${PGID}
8 | - TZ=${TZ}
9 | - OWNCLOUD_DOMAIN=${OWNCLOUD_DOMAIN}
10 | - OWNCLOUD_DB_TYPE=mysql
11 | - OWNCLOUD_DB_NAME=owncloud
12 | - OWNCLOUD_DB_USERNAME=owncloud
13 | - OWNCLOUD_DB_PASSWORD=${DB_PASSWORD}
14 | - OWNCLOUD_DB_HOST=owncloudmariadb
15 | - OWNCLOUD_ADMIN_USERNAME=${ADMIN_USERNAME}
16 | - OWNCLOUD_ADMIN_PASSWORD=${ADMIN_PASSWORD}
17 | - OWNCLOUD_MYSQL_UTF8MB4=true
18 | - OWNCLOUD_REDIS_ENABLED=true
19 | - OWNCLOUD_REDIS_HOST=owncloudredis
20 | volumes:
21 | - /portainer/Files/AppData/Config/Owncloud/data:/mnt/data
22 | ports:
23 | - ${PORT}:8080
24 | restart: unless-stopped
25 | depends_on:
26 | - owncloudmariadb
27 | - owncloudredis
28 | owncloudmariadb:
29 | image: mariadb:10.5
30 | container_name: owncloudmariadb
31 | environment:
32 | - PUID=${PUID}
33 | - PGID=${PGID}
34 | - TZ=${TZ}
35 | - MYSQL_ROOT_PASSWORD=${DB_PASSWORD}
36 | - MYSQL_USER=owncloud
37 | - MYSQL_PASSWORD=${DB_PASSWORD}
38 | - MYSQL_DATABASE=owncloud
39 | volumes:
40 | - /portainer/Files/AppData/Config/Owncloud/DB:/var/lib/mysql
41 | restart: unless-stopped
42 | owncloudredis:
43 | image: redis:6
44 | container_name: owncloudredis
45 | volumes:
46 | - /portainer/Files/AppData/Config/Owncloud/redis:/data
47 | restart: unless-stopped
48 |
--------------------------------------------------------------------------------
/Template/Stack/petio.yml:
--------------------------------------------------------------------------------
1 | services:
2 | petio:
3 | image: ghcr.io/petio-team/petio
4 | container_name: petio
5 | environment:
6 | - PUID=0
7 | - PGID=0
8 | - TZ=Europe/Athens
9 | volumes:
10 | - /portainer/Files/AppData/Config/petio:/config
11 | ports:
12 | - 7777:7777
13 | restart: unless-stopped
14 | depends_on:
15 | - petio_mongo_db
16 | petio_mongo_db:
17 | image: mongo:4.4.18
18 | container_name: petio_mongo_db
19 | hostname: mongo
20 | environment:
21 | - PUID=0
22 | - PGID=0
23 | - TZ=Europe/Athens
24 | volumes:
25 | - /portainer/Files/AppData/Config/petio/mongo_db/config:/data/configdb
26 | - /portainer/Files/AppData/Config/petio/mongo_db/DB:/data/db
27 | restart: unless-stopped
28 |
--------------------------------------------------------------------------------
/Template/Stack/pinchflat.yml:
--------------------------------------------------------------------------------
1 | version: '3'
2 | services:
3 | pinchflat:
4 | image: ghcr.io/kieraneglin/pinchflat:latest
5 | environment:
6 | # Set the timezone to your local timezone
7 | - TZ=Europe/Athens
8 | ports:
9 | - '8945:8945'
10 | volumes:
11 | - /portainer/Files/AppData/Config/pinchflat:/config
12 | - /portainer/Files/AppData/Config/pinchflat/downloads:/downloads
13 |
--------------------------------------------------------------------------------
/Template/Stack/pingvin.yml:
--------------------------------------------------------------------------------
1 | services:
2 | pingvin-share:
3 | image: stonith404/pingvin-share
4 | restart: unless-stopped
5 | ports:
6 | - 3123:3000
7 | volumes:
8 | - /portainer/Files/AppData/Config/pingvin:/opt/app/backend/data
9 | - /portainer/Files/AppData/Config/pingvin/images:/opt/app/frontend/public/img
10 | # Optional: If you add ClamAV, uncomment the following to have ClamAV start first.
11 | # depends_on:
12 | # clamav:
13 | # condition: service_healthy
14 | # Optional: Add ClamAV (see README.md)
15 | # ClamAV is currently only available for AMD64 see https://github.com/Cisco-Talos/clamav/issues/482
16 | # clamav:
17 | # restart: unless-stopped
18 | # image: clamav/clamav
19 |
--------------------------------------------------------------------------------
/Template/Stack/posteio.yml:
--------------------------------------------------------------------------------
1 | services:
2 |
3 | mailserver:
4 | image: analogic/poste.io
5 | container_name: poste
6 | restart: always
7 | ports:
8 | - "82:80"
9 | - "445:443"
10 | - "25:25"
11 | - "110:110"
12 | - "143:143"
13 | - "587:587"
14 | - "993:993"
15 | - "995:995"
16 | - "4190:4190"
17 | environment:
18 | - TZ=Europe/Athens
19 | - h=mail.[some-domain].com # enter the email server hosting address
20 | - HTTP_PORT=82
21 | - HTTPS_PORT=445
22 | - DISABLE_CLAMAV=TRUE
23 | - DISABLE_RSPAMD=TRUE
24 | volumes:
25 | - /etc/localtime:/etc/localtime:ro
26 | - /portainer/Files/AppData/Config/poste/data/nginx/html/.well-known:/opt/www/.well-known
27 | - /portainer/Files/AppData/Config/poste/data/mailserver:/dataroot
28 |
--------------------------------------------------------------------------------
/Template/Stack/proxitok.yml:
--------------------------------------------------------------------------------
1 | services:
2 | proxitok-redis:
3 | image: redis
4 | command: redis-server --save 60 1 --loglevel warning
5 | container_name: ProxiTok-REDIS
6 | hostname: proxitok-redis
7 | mem_limit: 256m
8 | cpu_shares: 768
9 | security_opt:
10 | - no-new-privileges:true
11 | read_only: true
12 | user: 1026:100
13 | healthcheck:
14 | test: ["CMD-SHELL", "redis-cli ping || exit 1"]
15 | restart: on-failure:5
16 |
17 | proxitok-signer:
18 | image: ghcr.io/pablouser1/signtok:master
19 | container_name: ProxiTok-SIGNER
20 | hostname: proxitok-signer
21 | mem_limit: 512m
22 | cpu_shares: 768
23 | security_opt:
24 | - no-new-privileges:true
25 | read_only: true
26 | user: 1026:100
27 | healthcheck:
28 | test: wget --no-verbose --tries=1 --spider http://localhost:8080/ || exit 1
29 | restart: on-failure:5
30 |
31 | proxitok:
32 | image: ghcr.io/pablouser1/proxitok:master
33 | container_name: ProxiTok
34 | hostname: proxitok
35 | mem_limit: 1g
36 | cpu_shares: 768
37 | security_opt:
38 | - no-new-privileges:true
39 | healthcheck:
40 | test: stat /etc/passwd || exit 1
41 | ports:
42 | - 9770:80
43 | volumes:
44 | - /portainer/Files/AppData/Config/proxitok-cache:/cache
45 | environment:
46 | LATTE_CACHE: /cache
47 | API_CACHE: redis
48 | REDIS_HOST: proxitok-redis
49 | REDIS_PORT: 6379
50 | API_SIGNER: remote
51 | API_SIGNER_URL: http://proxitok-signer:8080/signature
52 | restart: on-failure:5
53 | depends_on:
54 | proxitok-redis:
55 | condition: service_healthy
56 | proxitok-signer:
57 | condition: service_healthy
58 |
--------------------------------------------------------------------------------
/Template/Stack/pve-exporter.yml:
--------------------------------------------------------------------------------
1 | services:
2 | pve-exporter:
3 | image: prompve/prometheus-pve-exporter
4 | container_name: pve-exporter
5 | ports:
6 | - 9221:9221
7 | volumes:
8 | - /portainer/Files/AppData/Config/pve-exporter:/etc/pve.yml
9 | restart: always
10 |
--------------------------------------------------------------------------------
/Template/Stack/readarr.yml:
--------------------------------------------------------------------------------
1 | services:
2 | readarr:
3 | image: lscr.io/linuxserver/readarr:develop
4 | container_name: readarr
5 | environment:
6 | - PUID=1000
7 | - PGID=1000
8 | - TZ=Europe/Athens
9 | volumes:
10 | - /portainer/Files/AppData/Config/readarr/data:/config
11 | - /portainer/Files/AppData/Config/readarr/books:/books #optional
12 | - /portainer/Files/AppData/Config/readarr/downloads:/downloads #optional
13 | ports:
14 | - 8787:8787
15 | restart: unless-stopped
16 |
--------------------------------------------------------------------------------
/Template/Stack/remotely.yml:
--------------------------------------------------------------------------------
1 | services:
2 | remotely:
3 | image: immybot/remotely:latest
4 | ports:
5 | - 5009:5000
6 | volumes:
7 | - /portainer/Files/AppData/Config/remotely:/remotely-data
8 |
--------------------------------------------------------------------------------
/Template/Stack/renovate.yml:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/Template/Stack/romm.env:
--------------------------------------------------------------------------------
1 | ROMM_BASE_PATH=/path/to/romm_mock
2 | DEV_MODE=true
3 |
4 | # Gunicorn (optional)
5 | GUNICORN_WORKERS=4 # (2 × CPU cores) + 1
6 |
7 | # IGDB credentials
8 | IGDB_CLIENT_ID=
9 | IGDB_CLIENT_SECRET=
10 |
11 | # Mobygames
12 | MOBYGAMES_API_KEY=
13 |
14 | # SteamGridDB
15 | STEAMGRIDDB_API_KEY=
16 |
17 | # Database config
18 | #DB_HOST=127.0.0.1
19 | DB_PORT=3306
20 | MARIADB_ROOT_PASSWORD= # Use a unique, secure password
21 | MARIADB_DATABASE=romm
22 | MARIADB_USER=romm-user
23 | MARIADB_PASSWORD=
24 |
25 | # Redis config
26 | REDIS_HOST=127.0.0.1
27 | REDIS_PORT=6379
28 |
29 | # Authentik
30 | POSTGRES_DB=authentik
31 | POSTGRES_USER=authentik
32 | POSTGRES_PASSWORD=
33 | AUTHENTIK_SECRET_KEY=
34 | AUTHENTIK_BOOTSTRAP_PASSWORD=
35 |
36 | # Authentication
37 | ROMM_AUTH_SECRET_KEY=
38 | # Disable auth on download endpoint for 3rd party support
39 | DISABLE_DOWNLOAD_ENDPOINT_AUTH=
40 | # Disable CSRF protection for development and testing purposes
41 | DISABLE_CSRF_PROTECTION=
42 | # Disable username + passsword login when using OIDC login
43 | DISABLE_USERPASS_LOGIN=
44 |
45 | # OpenID Connect (Authentik, Authelia, etc.)
46 | OIDC_ENABLED=
47 | OIDC_PROVIDER=
48 | OIDC_CLIENT_ID=
49 | OIDC_CLIENT_SECRET=
50 | OIDC_REDIRECT_URI=
51 | OIDC_SERVER_APPLICATION_URL=
52 |
53 | # Filesystem watcher (optional)
54 | ENABLE_RESCAN_ON_FILESYSTEM_CHANGE=true
55 | RESCAN_ON_FILESYSTEM_CHANGE_DELAY=5
56 |
57 | # Periodic Tasks (optional)
58 | ENABLE_SCHEDULED_RESCAN=true
59 | SCHEDULED_RESCAN_CRON=0 3 * * *
60 | ENABLE_SCHEDULED_UPDATE_SWITCH_TITLEDB=true
61 | SCHEDULED_UPDATE_SWITCH_TITLEDB_CRON=0 4 * * *
62 |
63 | # In-browser emulation
64 | DISABLE_EMULATOR_JS=false
65 | DISABLE_RUFFLE_RS=false
66 |
67 | # Logging
68 | LOGLEVEL=DEBUG
69 |
--------------------------------------------------------------------------------
/Template/Stack/romm.yml:
--------------------------------------------------------------------------------
1 | services:
2 | romm:
3 | image: rommapp/romm:latest
4 | container_name: romm
5 | restart: unless-stopped
6 | environment:
7 | - DB_HOST=romm-db
8 | - DB_NAME=romm # Should match MARIADB_DATABASE in mariadb
9 | - DB_USER=romm-user # Should match MARIADB_USER in mariadb
10 | - DB_PASSWD= # Should match MARIADB_PASSWORD in mariadb
11 | - ROMM_AUTH_SECRET_KEY= # Generate a key with `openssl rand -hex 32`
12 | - IGDB_CLIENT_ID= # Generate an ID and SECRET in IGDB
13 | - IGDB_CLIENT_SECRET= # https://api-docs.igdb.com/#account-creation
14 | - MOBYGAMES_API_KEY= # https://www.mobygames.com/info/api/
15 | - STEAMGRIDDB_API_KEY= # https://github.com/rommapp/romm/wiki/Generate-API-Keys#steamgriddb
16 | volumes:
17 | - /portainer/Files/AppData/Config/romm/resources:/romm/resources # Resources fetched from IGDB (covers, screenshots, etc.)
18 | - /portainer/Files/AppData/Config/romm/redis_data:/redis-data # Cached data for background tasks
19 | - /portainer/roms/library:/romm/library # Your game library. Check https://github.com/rommapp/romm?tab=readme-ov-file#folder-structure for more details.
20 | - /portainer/roms/assets:/romm/assets # Uploaded saves, states, etc.
21 | - /portainer/Files/AppData/Config/romm/config:/romm/config # Path where config.yml is stored
22 | ports:
23 | - 480:8080
24 | depends_on:
25 | romm-db:
26 | condition: service_healthy
27 | restart: true
28 | romm-db:
29 | image: mariadb:latest
30 | container_name: romm-db
31 | restart: unless-stopped
32 | env_file:
33 | - romm.env
34 | volumes:
35 | - /portainer/Files/AppData/Config/romm/maria-db:/var/lib/mysql
36 | healthcheck:
37 | test: ["CMD", "healthcheck.sh", "--connect", "--innodb_initialized"]
38 | start_period: 30s
39 | start_interval: 10s
40 | interval: 10s
41 | timeout: 5s
42 | retries: 5
43 | ports:
44 | - $DB_PORT:3306
45 |
46 |
47 |
48 |
49 |
50 |
--------------------------------------------------------------------------------
/Template/Stack/rport.yml:
--------------------------------------------------------------------------------
1 | services:
2 | rport-server:
3 | container_name: rport
4 | image: iotech17/rport:latest
5 | restart: always
6 | privileged: true
7 | ports:
8 | - 3000:3000
9 | - 4822:4822
10 | - 10000:8080
11 | - 20000-20100:20000-20100
12 | volumes:
13 | - type: bind
14 | source: /portainer/Files/AppData/Config/rport/rportd.conf
15 | target: /etc/rport/rportd.conf:ro
16 | - type: bind
17 | source: /portainer/Files/AppData/Config/rport/rport.key
18 | target: /var/lib/rport/rport.key:ro
19 | - type: bind
20 | source: /portainer/Files/AppData/Config/rport/rport.crt
21 | target: /var/lib/rport/rport.crt:ro
22 | - type: bind
23 | source: /portainer/Files/AppData/Config/rport/data
24 | target: /var/lib/rport/
25 |
--------------------------------------------------------------------------------
/Template/Stack/rr_mtm.yml:
--------------------------------------------------------------------------------
1 | services:
2 | lidarr:
3 | container_name: lidarr
4 | environment:
5 | - "PUID=${PUID}"
6 | - "PGID=${PGID}"
7 | - "UMASK=${UMASK}"
8 | - "TZ=${TZ}"
9 | image: hotio/lidarr:nightly
10 | restart: unless-stopped
11 | privileged: true
12 | ports:
13 | - "${LIDARRPORT}:8686"
14 | volumes:
15 | - "${APPDATA}/lidarr:/config"
16 | - "${DOWNLOAD}:/data"
17 | - "${MUSIC}:/music"
18 | radarr:
19 | container_name: radarr
20 | environment:
21 | - "PUID=${PUID}"
22 | - "PGID=${PGID}"
23 | - "UMASK=${UMASK}"
24 | - "TZ=${TZ}"
25 | image: hotio/radarr:nightly
26 | restart: unless-stopped
27 | privileged: true
28 | ports:
29 | - "${RADARRPORT}:7878"
30 | volumes:
31 | - "${APPDATA}/radarr:/config"
32 | - "${DOWNLOAD}:/data"
33 | - "${MOVIES}:/movie"
34 | sonarr:
35 | container_name: sonarr
36 | environment:
37 | - "PUID=${PUID}"
38 | - "PGID=${PGID}"
39 | - "UMASK=${UMASK}"
40 | - "TZ=${TZ}"
41 | image: hotio/sonarr:nightly
42 | restart: unless-stopped
43 | privileged: true
44 | ports:
45 | - "${SONARRPORT}:8989"
46 | volumes:
47 | - "${APPDATA}/sonarr:/config"
48 | - "${DOWNLOAD}:/data"
49 | - "${TV}:/tv"
50 |
--------------------------------------------------------------------------------
/Template/Stack/rustdesk.yml:
--------------------------------------------------------------------------------
1 | networks:
2 | rustdesk-net:
3 | external: false
4 |
5 | services:
6 | hbbs:
7 | container_name: hbbs
8 | ports:
9 | - 21115:21115
10 | - 21116:21116
11 | - 21116:21116/udp
12 | - 21118:21118
13 | image: rustdesk/rustdesk-server:latest
14 | command: hbbs -r rustdesk.example.com:21117
15 | volumes:
16 | - /portainer/Files/AppData/Config/rustdesk/data:/root
17 | networks:
18 | - rustdesk-net
19 | depends_on:
20 | - hbbr
21 | restart: unless-stopped
22 |
23 | hbbr:
24 | container_name: hbbr
25 | ports:
26 | - 21117:21117
27 | - 21119:21119
28 | image: rustdesk/rustdesk-server:latest
29 | command: hbbr
30 | volumes:
31 | - /portainer/Files/AppData/Config/hbbr/data:/root
32 | networks:
33 | - rustdesk-net
34 | restart: unless-stopped
35 |
--------------------------------------------------------------------------------
/Template/Stack/shaarli.yml:
--------------------------------------------------------------------------------
1 | services:
2 | shaarli:
3 | container_name: Shaarli
4 | image: ghcr.io/shaarli/shaarli:latest
5 | restart: on-failure
6 | ports:
7 | - 7755:80
8 | volumes:
9 | - /portainer/Files/AppData/Config/shaarli/cache:/var/www/shaarli/cache:rw
10 | - /portainer/Files/AppData/Config/shaarli/data:/var/www/shaarli/data:rw
11 | environment:
12 | PUID: 1026
13 | PGID: 100
14 | TZ: Europe/Athens
15 |
--------------------------------------------------------------------------------
/Template/Stack/shiori.yml:
--------------------------------------------------------------------------------
1 | services:
2 | shiori:
3 | image: ghcr.io/go-shiori/shiori
4 | container_name: shiori-default
5 | environment:
6 | - TZ=Europe/Athens
7 | - PUID=1000
8 | - PGID=1000
9 | ports:
10 | - 8580:8080
11 | restart: unless-stopped
12 | volumes:
13 | - /portainer/Files/AppData/Config/shiori:/data
14 |
15 |
--------------------------------------------------------------------------------
/Template/Stack/signal.yml:
--------------------------------------------------------------------------------
1 | services:
2 | nginx-terminate:
3 | build: ./nginx-terminate/
4 | restart: unless-stopped
5 | volumes:
6 | - /portainer/Files/AppData/Configs/nginx-terminate:/etc/nginx/conf.d
7 | - /portainer/Files/AppData/Configs/certbot/conf:/etc/letsencrypt
8 | - /portainer/Files/AppData/Configs/certbot/www:/var/www/certbot
9 | ports:
10 | - "443:443"
11 | - "80:80"
12 | command: "/bin/sh -c 'while :; do sleep 6h & wait $${!}; /opt/nginx/sbin/nginx -s reload; done & /opt/nginx/sbin/nginx -c /etc/nginx/conf.d/nginx.conf -g \"daemon off;\"'"
13 | nginx-relay:
14 | build: ./nginx-relay/
15 | restart: unless-stopped
16 | volumes:
17 | - /portainer/Files/AppData/Configs/nginx-relay:/etc/nginx/conf.d
18 | command: "/bin/sh -c 'while :; do sleep 6h & wait $${!}; /opt/nginx/sbin/nginx -s reload; done & /opt/nginx/sbin/nginx -c /etc/nginx/conf.d/nginx.conf -g \"daemon off;\"'"
19 | certbot:
20 | image: certbot/certbot
21 | restart: unless-stopped
22 | volumes:
23 | - /portainer/Files/AppData/Configs/certbot/conf:/etc/letsencrypt
24 | - /portainer/Files/AppData/Configs/certbot/www:/var/www/certbot
25 | entrypoint: "/bin/sh -c 'trap exit TERM; while :; do certbot renew; sleep 12h & wait $${!}; done;'"
26 |
--------------------------------------------------------------------------------
/Template/Stack/silverstripe.yml:
--------------------------------------------------------------------------------
1 | services:
2 | silverstripe:
3 | image: brettt89/silverstripe-web:8.1-apache
4 | volumes:
5 | - /portainer/Files/AppData/Config/silverstripe:/var/www/html
6 | depends_on:
7 | - silverstripe-db
8 | environment:
9 | - DOCUMENT_ROOT=/var/www/html/public
10 | - SS_TRUSTED_PROXY_IPS=*
11 | - SS_ENVIRONMENT_TYPE=dev
12 | - SS_DATABASE_SERVER=database
13 | - SS_DATABASE_NAME=SS_mysite
14 | - SS_DATABASE_USERNAME=root
15 | - SS_DATABASE_PASSWORD=
16 | - SS_DEFAULT_ADMIN_USERNAME=admin
17 | - SS_DEFAULT_ADMIN_PASSWORD=password
18 | silverstripe-db:
19 | image: mysql:5.7
20 | environment:
21 | - MYSQL_ALLOW_EMPTY_PASSWORD=yes
22 | volumes:
23 | - /portainer/Files/AppData/Config/silverstripe/db-data:/var/lib/mysql
24 | volumes:
25 | db-data:
26 |
--------------------------------------------------------------------------------
/Template/Stack/snibox.yml:
--------------------------------------------------------------------------------
1 | services:
2 | frontend:
3 | image: snibox/nginx-puma:1.15.9
4 | ports:
5 | - "8000:80"
6 | volumes:
7 | - static-files:/var/www/html
8 | depends_on:
9 | - backend
10 |
11 | backend:
12 | image: snibox/snibox:latest
13 | command: sh -c "rm -rf tmp/pids && ./bin/rails s -p 3010 -b '0.0.0.0'"
14 | environment:
15 | DB_NAME: "${DB_NAME}"
16 | DB_USER: "${DB_USER}"
17 | DB_PASS: "${DB_PASS}"
18 | DB_HOST: "${DB_HOST}"
19 | DB_PORT: "${DB_PORT}"
20 | FORCE_SSL: "${FORCE_SSL}"
21 | MAILGUN_SMTP_PORT: "${MAILGUN_SMTP_PORT}"
22 | MAILGUN_SMTP_SERVER: "${MAILGUN_SMTP_SERVER}"
23 | MAILGUN_SMTP_LOGIN: "${MAILGUN_SMTP_LOGIN}"
24 | MAILGUN_SMTP_PASSWORD: "${MAILGUN_SMTP_PASSWORD}"
25 | MAILGUN_API_KEY: "${MAILGUN_API_KEY}"
26 | MAILGUN_DOMAIN: "${MAILGUN_DOMAIN}"
27 | MAILGUN_PUBLIC_KEY: "${MAILGUN_PUBLIC_KEY}"
28 | SECRET_KEY_BASE: "${SECRET_KEY_BASE}"
29 | volumes:
30 | - /portainer/Files/AppData/Config/snibox:/app/public
31 | depends_on:
32 | - database
33 |
34 | database:
35 | image: postgres:10.7-alpine
36 | volumes:
37 | - /portainer/Files/AppData/Config/snibox/pg-data:/var/lib/postgresql/data
38 |
--------------------------------------------------------------------------------
/Template/Stack/snippetbox.yml:
--------------------------------------------------------------------------------
1 | services:
2 | snippet-box:
3 | image: pawelmalak/snippet-box
4 | container_name: snippet-box
5 | volumes:
6 | - /portainer/Files/AppData/Config/snippetbox/data:/app/data
7 | ports:
8 | - 5000:5000
9 | restart: unless-stopped
10 |
--------------------------------------------------------------------------------
/Template/Stack/speedtest-tracker.yml:
--------------------------------------------------------------------------------
1 | services:
2 | speedtest-tracker:
3 | container_name: speedtest-tracker
4 | restart: unless-stopped
5 | ports:
6 | - 8288:80
7 | environment:
8 | - PUID=1000
9 | - PGID=1000
10 | - DB_CONNECTION=sqlite
11 | volumes:
12 | - /portainer/Files/AppData/Config/speedtest-tracker:/config
13 | image: lscr.io/linuxserver/speedtest-tracker:latest
14 |
--------------------------------------------------------------------------------
/Template/Stack/stirling-pdf.yml:
--------------------------------------------------------------------------------
1 | services:
2 | stirling-pdf:
3 | image: frooodle/s-pdf:latest
4 | ports:
5 | - 8180:8080
6 | volumes:
7 | - /portainer/Files/AppData/Config/tesseract-training-data:/usr/share/tesseract-ocr/4.00/tessdata #Required for extra OCR languages
8 | - /portainer/Files/AppData/Config/stirling-pdf:/configs
9 | # - /location/of/customFiles:/customFiles/
10 | environment:
11 | - DOCKER_ENABLE_SECURITY=false
12 |
--------------------------------------------------------------------------------
/Template/Stack/syncthing.yml:
--------------------------------------------------------------------------------
1 | services:
2 | syncthing:
3 | image: lscr.io/linuxserver/syncthing:latest
4 | container_name: syncthing
5 | hostname: syncthing #optional
6 | environment:
7 | - PUID=1000
8 | - PGID=1000
9 | - TZ=Europe/Athens
10 | volumes:
11 | - /portainer/Files/AppData/Config/syncthing:/config
12 | - /portainer:/portainer
13 | ports:
14 | - 8384:8384
15 | - 22000:22000/tcp
16 | - 22000:22000/udp
17 | - 21027:21027/udp
18 | restart: unless-stopped
19 |
--------------------------------------------------------------------------------
/Template/Stack/tabby.yml:
--------------------------------------------------------------------------------
1 | services:
2 |
3 | tabby:
4 | image: parksauce/tabby
5 | container_name: tabby
6 | ports:
7 | - 8010:80
8 | restart: unless-stopped
9 |
10 | tabby-db:
11 | image: linuxserver/mariadb
12 | container_name: tabby-db
13 | environment:
14 | - PUID=1000 # Run 'id' in your terminal to get this value
15 | - PGID=1000 # Run 'id' in your terminal to get this value
16 | - MYSQL_ROOT_PASSWORD=ROOT_ACCESS_PASSWORD
17 | - TZ=Europe/Athens
18 | - MYSQL_DATABASE=tabby
19 | - MYSQL_USER=tabby
20 | - MYSQL_PASSWORD=tabby
21 | volumes:
22 | - /portainer/Files/AppData/Config/tabby/db:/config
23 | restart: unless-stopped
24 |
--------------------------------------------------------------------------------
/Template/Stack/tailscale.yml:
--------------------------------------------------------------------------------
1 | services:
2 | tailscale:
3 | hostname: tailscale # This will become the tailscale device name
4 | container_name: tailscale
5 | image: tailscale/tailscale:latest
6 | network_mode: host
7 | volumes:
8 | - /portainer/Files/AppData/Config/tailscale:/var/lib # State data will be stored in this directory
9 | - /dev/net/tun:/dev/net/tun # Required for tailscale to work
10 | cap_add: # Required for tailscale to work
11 | - net_admin
12 | - sys_module
13 | command: tailscaled
14 | restart: unless-stopped
15 |
--------------------------------------------------------------------------------
/Template/Stack/tandoor.yml:
--------------------------------------------------------------------------------
1 | services:
2 | db_recipes:
3 | image: postgres
4 | environment:
5 | - POSTGRES_DB=postgres
6 | - POSTGRES_USER=postgres
7 | - POSTGRES_PASSWORD=postgres
8 |
9 | recipes:
10 | image: vabene1111/recipes
11 | container_name: tandoor
12 | ports:
13 | - 82:8080
14 | volumes:
15 | - /portainer/Files/AppData/Config/tandoor/staticfiles:/opt/recipes/staticfiles
16 | - /portainer/Files/AppData/Config/tandoor/mediafiles:/opt/recipes/mediafiles
17 | environment:
18 | - SECRET_KEY=YOUR_SECRET_KEY
19 | - DB_ENGINE=django.db.backends.postgresql
20 | - POSTGRES_HOST=db_recipes
21 | - POSTGRES_PORT=5432
22 | - POSTGRES_USER=postgres
23 | - POSTGRES_PASSWORD=postgres
24 | - POSTGRES_DB=postgres
25 | restart: unless-stopped
26 | depends_on:
27 | - db_recipes
28 |
--------------------------------------------------------------------------------
/Template/Stack/tdarr.yml:
--------------------------------------------------------------------------------
1 | services:
2 | tdarr:
3 | container_name: tdarr
4 | image: ghcr.io/haveagitgat/tdarr:latest
5 | restart: unless-stopped
6 | network_mode: bridge
7 | ports:
8 | - 8265:8265 # webUI port
9 | - 8266:8266 # server port
10 | - 8267:8267 # Internal node port
11 | - 8268:8268 # Example extra node port
12 | environment:
13 | - TZ=Europe/Athens
14 | - PUID=${PUID}
15 | - PGID=${PGID}
16 | - UMASK_SET=002
17 | - serverIP=0.0.0.0
18 | - serverPort=8266
19 | - webUIPort=8265
20 | - internalNode=true
21 | - nodeID=MyInternalNode
22 | volumes:
23 | - /portainer/Files/AppData/Config/tdarr/server:/app/server
24 | - /portainer/Files/AppData/Config/tdarr/configs:/app/configs
25 | - /portainer/Files/AppData/Config/logs:/app/logs
26 | - /portainer/media:/media
27 | - /portainer/transcode_cache:/temp
28 |
--------------------------------------------------------------------------------
/Template/Stack/teleportenv.file:
--------------------------------------------------------------------------------
1 | DEBUG=1
2 | CONTAINERHOME=/root/go/src/github.com/gravitational/teleport
3 |
--------------------------------------------------------------------------------
/Template/Stack/timetagger.yml:
--------------------------------------------------------------------------------
1 | services:
2 | timetagger:
3 | image: ghcr.io/almarklein/timetagger
4 | ports:
5 | - "280:80"
6 | volumes:
7 | - /portainer/Files/AppData/Config/timetagger:/root/_timetagger
8 | environment:
9 | - TIMETAGGER_BIND=0.0.0.0:80
10 | - TIMETAGGER_DATADIR=/root/_timetagger
11 | - TIMETAGGER_LOG_LEVEL=info
12 | - TIMETAGGER_CREDENTIALS=test:$$2a$$08$$0CD1NFiIbancwWsu3se1v.RNR/b7YeZd71yg3cZ/3whGlyU6Iny5i # test:test
13 |
--------------------------------------------------------------------------------
/Template/Stack/tinymediamanager.yml:
--------------------------------------------------------------------------------
1 | services:
2 | tinymediamanager:
3 | image: tinymediamanager/tinymediamanager:latest
4 | container_name: tinymediamanager
5 | environment:
6 | - USER_ID=1000
7 | - GROUP_ID=100
8 | - ALLOW_DIRECT_VNC=true
9 | - LC_ALL=en_US.UTF-8 # force UTF8
10 | - LANG=en_US.UTF-8 # force UTF8
11 | - PASSWORD=tinymediamanager
12 | volumes:
13 | - /portainer/Files/AppData/Config/tinemediamanager/data:/data
14 | - /portainer/movies:/media/movies
15 | - /portainer/tvshows:/media/tvshows
16 | ports:
17 | - 5900:5900 # VNC port
18 | - 4000:4000 # Webinterface
19 | restart: unless-stopped
20 |
--------------------------------------------------------------------------------
/Template/Stack/tooljet.yml:
--------------------------------------------------------------------------------
1 | services:
2 | tooljet-plugins:
3 | build:
4 | context: ./
5 | dockerfile: ./docker/plugins.Dockerfile.dev
6 | image: tooljet-plugins:development
7 | platform: linux/x86_64
8 | volumes:
9 | - /portainer/Files/AppData/Config/tooljet/plugins:/app/plugins
10 | command: npm run --prefix plugins start
11 |
12 | tooljet-client:
13 | build:
14 | context: ./
15 | dockerfile: ./docker/client.Dockerfile.dev
16 | image: tooljet-client:development
17 | platform: linux/x86_64
18 | volumes:
19 | - /portainer/Files/AppData/Config/tooljet:/app/frontend:delegated
20 | - /portainer/Files/AppData/Config/tooljet/plugins:/app/plugins
21 | - /portainer/Files/AppData/Config/tooljet/app/frontend/node_modules/
22 | ports:
23 | - 8082:8082
24 | environment:
25 | - WEBPACKER_DEV_SERVER_HOST=0.0.0.0
26 | - NODE_ENV=development
27 | - SERVE_CLIENT=false
28 | command: npm run --prefix frontend start
29 |
30 | tooljet-server:
31 | build:
32 | context: ./
33 | dockerfile: ./docker/server.Dockerfile.dev
34 | image: tooljet-server:development
35 | platform: linux/x86_64
36 | depends_on:
37 | - tooljet-postgres
38 | volumes:
39 | - /portainer/Files/AppData/Config/tooljet/server:/app/server:delegated
40 | - /portainer/Files/AppData/Config/tooljet/server/plugins:/app/plugins
41 | - /portainer/Files/AppData/Config/tooljet/server/app/server/node_modules/
42 | - /portainer/Files/AppData/Config/tooljet/server/.env:/app/.env
43 | - /portainer/Files/AppData/Config/tooljet/server/.env.test:/app/.env.test
44 | ports:
45 | - 3000:3000
46 | environment:
47 | - SERVE_CLIENT=false
48 | - FORCE_COLOR=1
49 | command: npm run --prefix server start:dev
50 |
51 | tooljet-postgrest:
52 | image: postgrest/postgrest:v10.1.1.20221215
53 | ports:
54 | - "7001:3000"
55 | env_file:
56 | - /portainer/Files/AppData/Config/tooljet/server/.env
57 | depends_on:
58 | - tooljet-postgres
59 |
60 | tooljet-postgres:
61 | image: postgres:13
62 | restart: always
63 | ports:
64 | - 5432:5432
65 | volumes:
66 | - /portainer/Files/AppData/Config/tooljet/postgres:/data/postgres
67 | environment:
68 | - POSTGRES_PASSWORD=postgres
69 |
--------------------------------------------------------------------------------
/Template/Stack/traggo.yml:
--------------------------------------------------------------------------------
1 | services:
2 | traggo:
3 | image: traggo/server:latest
4 | ports:
5 | - 3030:3030
6 | environment:
7 | TRAGGO_DEFAULT_USER_NAME: "admin"
8 | TRAGGO_DEFAULT_USER_PASS: "mynewpassword"
9 | volumes:
10 | - /portainer/Files/AppData/Config/traggo/data:/opt/traggo/data
11 |
--------------------------------------------------------------------------------
/Template/Stack/trudesk.yml:
--------------------------------------------------------------------------------
1 | services:
2 | trudesk:
3 | image: polonel/trudesk
4 | restart: always
5 | ports:
6 | - 8118:8118
7 | dns:
8 | - 8.8.8.8
9 | - 1.1.1.1
10 | environment:
11 | NODE_ENV: production
12 | TRUDESK_DOCKER: true
13 | TD_MONGODB_SERVER: mongo
14 | TD_MONGODB_DATABASE: trudesk
15 | ELATICSEARCH_URI: http://elasticsearch:9200
16 | TZ: Europe/Athens
17 | volumes:
18 | - /portainer/Files/AppData/Config/trudesk/uploads:/usr/src/trudesk/public/uploads
19 | - /portainer/Files/AppData/Config/trudesk/backups:/usr/src/trudesk/backups
20 | mongo:
21 | image: mongo
22 | restart: always
23 | ports:
24 | - 27017:27017
25 | volumes:
26 | - /portainer/Files/AppData/Config/trudesk/mongo:/var/lib/mongo
27 | - /portainer/Files/AppData/Config/trudesk/mongo:/data/configdb
28 | - /portainer/Files/AppData/Config/trudesk/mongo:/data/db
29 |
30 | elasticsearch:
31 | image: elasticsearch:8.0.0
32 | restart: always
33 | environment:
34 | - xpack.security.enabled=false
35 | - xpack.security.http.ssl.enabled=false
36 | - node.name=estrudesk01
37 | - cluster.initial_master_nodes=estrudesk01
38 | - discovery.seed_hosts=estrudesk01
39 | - bootstrap.memory_lock=true
40 | ulimits:
41 | memlock:
42 | soft: -1
43 | hard: -1
44 | ports:
45 | - 9200:9200
46 | - 9300:9300
47 | volumes:
48 | - /volume1/docker/trudesk/elasticsearch:/usr/share/elasticsearch/data
49 |
--------------------------------------------------------------------------------
/Template/Stack/tubearchivist.yml:
--------------------------------------------------------------------------------
1 | services:
2 | tubearchivist:
3 | container_name: tubearchivist
4 | restart: unless-stopped
5 | image: bbilly1/tubearchivist
6 | ports:
7 | - 8999:8000
8 | volumes:
9 | - /portainer/media:/youtube
10 | - /portainer/cache:/cache
11 | environment:
12 | - ES_URL=http://archivist-es:9200 # needs protocol e.g. http and port
13 | - REDIS_HOST=archivist-redis # don't add protocol
14 | - HOST_UID=1000
15 | - HOST_GID=1000
16 | - TA_HOST=INSERT_YOURIP_OR_HOSTNAME ##REQUIRED - set your Server IP or host name
17 | - TA_USERNAME=tubearchivist # your initial TA credentials
18 | - TA_PASSWORD=verysecret # your initial TA credentials
19 | - ELASTIC_PASSWORD=verysecret # set password for Elasticsearch
20 | - TZ=Europe/Athens # set your time zone
21 | depends_on:
22 | - archivist-es
23 | - archivist-redis
24 | archivist-redis:
25 | image: redis/redis-stack-server
26 | container_name: archivist-redis
27 | restart: unless-stopped
28 | expose:
29 | - 6379
30 | volumes:
31 | - /portainer/Files/AppData/Config/tubearchivist/redis:/data
32 | depends_on:
33 | - archivist-es
34 | archivist-es:
35 | image: bbilly1/tubearchivist-es # only for amd64, or use official es 8.7.0
36 | container_name: archivist-es
37 | restart: unless-stopped
38 | environment:
39 | - ELASTIC_PASSWORD=verysecret # matching Elasticsearch password
40 | - ES_JAVA_OPTS=-Xms512m -Xmx512m
41 | - xpack.security.enabled=true
42 | - discovery.type=single-node
43 | - path.repo=/usr/share/elasticsearch/data/snapshot
44 | ulimits:
45 | memlock:
46 | soft: -1
47 | hard: -1
48 | volumes:
49 | - /portainer/Files/AppData/Config/tubearchivist/es:/usr/share/elasticsearch/data # check for permission error when using bind mount, see readme
50 | expose:
51 | - 9200
52 |
--------------------------------------------------------------------------------
/Template/Stack/umami.yml:
--------------------------------------------------------------------------------
1 | services:
2 | umami:
3 | image: ghcr.io/umami-software/umami:postgresql-latest
4 | ports:
5 | - "3003:3000"
6 | environment:
7 | DATABASE_URL: postgresql://umami:umami@db:5432/umami
8 | DATABASE_TYPE: postgresql
9 | HASH_SALT: replace-me-with-a-random-string
10 | depends_on:
11 | - db
12 | restart: always
13 | db:
14 | image: postgres:15-alpine
15 | environment:
16 | POSTGRES_DB: umami
17 | POSTGRES_USER: umami
18 | POSTGRES_PASSWORD: umami
19 | volumes:
20 | - /portainer/Files/AppData/Config/umami:/docker-entrypoint-initdb.d/schema.postgresql.sql:ro
21 | - umami-db-data:/var/lib/postgresql/data
22 | restart: always
23 | volumes:
24 | umami-db-data:
25 |
--------------------------------------------------------------------------------
/Template/Stack/upsnap.yml:
--------------------------------------------------------------------------------
1 | services:
2 | upsnap:
3 | image: ghcr.io/seriousm4x/upsnap:3
4 | network_mode: host
5 | restart: always
6 | ports:
7 | - 8290:80
8 | volumes:
9 | - /portainer/Files/AppData/Config/upsnap:/app/pb_data
10 | healthcheck:
11 | test: wget --no-verbose --tries=1 --spider http://localhost:8290/api/health || exit 1
12 | interval: 1m
13 | timeout: 10s
14 | retries: 3
15 | environment:
16 | - TZ=Europe/Athens # Set container timezone for cron schedules
17 | # - UPSNAP_INTERVAL=@every 10s # Sets the interval in which the devices are pinged
18 | - UPSNAP_SCAN_RANGE=192.168.0.0/24 # Scan range is used for device discovery on local network
19 | - UPSNAP_WEBSITE_TITLE=Custom name # Custom website title
20 | # # you can change the listen ip:port inside the container or install custom packages for shutdown via a custom entrypoint
21 | # entrypoint: /bin/sh -c "apk update && apk add --no-cache ipmitool && rm -rf /var/cache/apk/* && ./upsnap serve --http 0.0.0.0:8290"
22 |
--------------------------------------------------------------------------------
/Template/Stack/uptimekuma.yml:
--------------------------------------------------------------------------------
1 | # Simple docker-compose.yml
2 | # You can change your port or volume location
3 | services:
4 | uptime-kuma:
5 | image: louislam/uptime-kuma:1
6 | container_name: uptime-kuma
7 | volumes:
8 | - /portainer/Files/AppData/Config/uptime-kuma-data:/app/data
9 | - /var/run/docker.sock:/var/run/docker.sock
10 | ports:
11 | - 3001:3001 # :
12 | restart: always
13 |
--------------------------------------------------------------------------------
/Template/Stack/vikunja.yml:
--------------------------------------------------------------------------------
1 | services:
2 | vikunjadb:
3 | image: mariadb:10
4 | command: --character-set-server=utf8mb4 --collation-server=utf8mb4_unicode_ci
5 | environment:
6 | MYSQL_ROOT_PASSWORD: supersecret
7 | MYSQL_USER: vikunja
8 | MYSQL_PASSWORD: secret
9 | MYSQL_DATABASE: vikunja
10 | volumes:
11 | - ./db:/var/lib/mysql
12 | restart: unless-stopped
13 | api:
14 | image: vikunja/api
15 | environment:
16 | VIKUNJA_DATABASE_HOST: vikunjadb
17 | VIKUNJA_DATABASE_PASSWORD: secret
18 | VIKUNJA_DATABASE_TYPE: mysql
19 | VIKUNJA_DATABASE_USER: vikunja
20 | VIKUNJA_DATABASE_DATABASE: vikunja
21 | VIKUNJA_SERVICE_JWTSECRET: lgdfjgdlamsvcnls
22 | VIKUNJA_SERVICE_FRONTENDURL: http://10.11.11.128:1180/api/v1/
23 | ports:
24 | - 3456:3456
25 | volumes:
26 | - ./files:/app/vikunja/files
27 | depends_on:
28 | - vikunjadb
29 | restart: unless-stopped
30 | frontend:
31 | image: vikunja/frontend
32 | ports:
33 | - 1180:80
34 | environment:
35 | VIKUNJA_API_URL: http://10.11.11.128:3456/api/v1
36 | restart: unless-stopped
37 |
--------------------------------------------------------------------------------
/Template/Stack/vpn_download.yml:
--------------------------------------------------------------------------------
1 | services:
2 | jackett:
3 | container_name: jackett
4 | depends_on:
5 | - qbittorrent
6 | environment:
7 | - "PUID=${PUID}"
8 | - "PGID=${PGID}"
9 | - "UMASK=${UMASK}"
10 | - "TZ=${TZ}"
11 | image: hotio/jackett
12 | network_mode: "service:qbittorrent"
13 | restart: unless-stopped
14 | volumes:
15 | - "${APPDATA}/jackett:/config"
16 | - "${DOWNLOAD}:/data"
17 | nzbget:
18 | container_name: nzbget
19 | depends_on:
20 | - qbittorrent
21 | environment:
22 | - "PUID=${PUID}"
23 | - "PGID=${PGID}"
24 | - "UMASK=${UMASK}"
25 | - "TZ=${TZ}"
26 | image: hotio/nzbget
27 | network_mode: "service:qbittorrent"
28 | restart: unless-stopped
29 | volumes:
30 | - "${APPDATA}/nzbget:/config"
31 | - "${DOWNLOAD}:/data"
32 | nzbhydra2:
33 | container_name: nzbhydra2
34 | depends_on:
35 | - qbittorrent
36 | environment:
37 | - "PUID=${PUID}"
38 | - "PGID=${PGID}"
39 | - "UMASK=${UMASK}"
40 | - "TZ=${TZ}"
41 | image: hotio/nzbhydra2
42 | network_mode: "service:qbittorrent"
43 | restart: unless-stopped
44 | volumes:
45 | - "${APPDATA}/nzbhydra2:/config"
46 | qbittorrent:
47 | container_name: qbittorrent
48 | environment:
49 | - "PUID=${PUID}"
50 | - "PGID=${PGID}"
51 | - "UMASK=${UMASK}"
52 | - "TZ=${TZ}"
53 | - "VPN_ENABLED=${VPN_ENABLED}"
54 | - "VPN_USER=${VPN_USER}"
55 | - "VPN_PASS=${VPN_PASS}"
56 | - "VPN_PROV=${VPN_PROV}"
57 | - "VPN_CLIENT=${VPN_CLIENT}"
58 | - "VPN_OPTIONS=${VPN_OPTIONS}"
59 | - "STRICT_PORT_FORWARD=${STRICT_PORT_FORWARD}"
60 | - "ENABLE_PRIVOXY=${ENABLE_PRIVOXY}"
61 | - "LAN_NETWORK=${LAN_NETWORK}"
62 | - "NAME_SERVERS=${NAME_SERVERS}"
63 | - "ADDITIONAL_PORTS=${ADDITIONAL_PORTS}"
64 | - "DEBUG=${DEBUG}"
65 | - "WEBUI_PORT=${QBITTORENTPORT}"
66 | image: binhex/arch-qbittorrentvpn
67 | ports:
68 | - "6881:6881"
69 | - "6881:6881/udp"
70 | - "${QBITTORENTPORT}:8080"
71 | - "${PRIVOXYPORT}:8118"
72 | - "${NZBHYDRA2PORT}:5076"
73 | - "${JACKETTPORT}:9117"
74 | - "${NZBGETPORT}:6789"
75 | privileged: true
76 | restart: unless-stopped
77 | volumes:
78 | - "${APPDATA}/qbittorrent:/config"
79 | - "${DOWNLOAD}:/data"
80 | - "/etc/localtime:/etc/localtime:ro"
81 |
--------------------------------------------------------------------------------
/Template/Stack/wallabag.yml:
--------------------------------------------------------------------------------
1 | services:
2 | wallabag:
3 | image: wallabag/wallabag
4 | environment:
5 | - MYSQL_ROOT_PASSWORD=wallaroot
6 | - SYMFONY__ENV__DATABASE_DRIVER=pdo_mysql
7 | - SYMFONY__ENV__DATABASE_HOST=db
8 | - SYMFONY__ENV__DATABASE_PORT=3306
9 | - SYMFONY__ENV__DATABASE_NAME=wallabag
10 | - SYMFONY__ENV__DATABASE_USER=wallabag
11 | - SYMFONY__ENV__DATABASE_PASSWORD=wallapass
12 | - SYMFONY__ENV__DATABASE_CHARSET=utf8mb4
13 | - SYMFONY__ENV__DATABASE_TABLE_PREFIX="wallabag_"
14 | - SYMFONY__ENV__MAILER_HOST=127.0.0.1
15 | - SYMFONY__ENV__MAILER_USER=~
16 | - SYMFONY__ENV__MAILER_PASSWORD=~
17 | - SYMFONY__ENV__FROM_EMAIL=wallabag@example.com
18 | - SYMFONY__ENV__DOMAIN_NAME=https://your-wallabag-url-instance.com
19 | - SYMFONY__ENV__SERVER_NAME="Your wallabag instance"
20 | ports:
21 | - "1180"
22 | volumes:
23 | - /portainer/Files/AppData/Config/wallabag/images:/var/www/wallabag/web/assets/images
24 | healthcheck:
25 | test: ["CMD", "wget" ,"--no-verbose", "--tries=1", "--spider", "http://localhost"]
26 | interval: 1m
27 | timeout: 3s
28 | depends_on:
29 | - wallabag-db
30 | - wallabag-redis
31 | wallabag-db:
32 | image: mariadb
33 | environment:
34 | - MYSQL_ROOT_PASSWORD=wallaroot
35 | volumes:
36 | - /portainer/Files/AppData/Config/wallabag/data:/var/lib/mysql
37 | healthcheck:
38 | test: ["CMD", "mysqladmin" ,"ping", "-h", "localhost"]
39 | interval: 20s
40 | timeout: 3s
41 | wallabag-redis:
42 | image: redis:alpine
43 | healthcheck:
44 | test: ["CMD", "redis-cli", "ping"]
45 | interval: 20s
46 | timeout: 3s
47 |
--------------------------------------------------------------------------------
/Template/Stack/watchrarr.yml:
--------------------------------------------------------------------------------
1 | services:
2 | watchrarr:
3 | image: homelabineer/watchrarr:latest
4 | container_name: watchrarr
5 | restart: unless-stopped
6 | volumes:
7 | - /portainer/Files/AppData/Config/watchrarr/config.yaml:/app/config.yaml
8 | - /portainer/Files/AppData/Config/watchrarr/logs:/app/logs
9 | - /portainer/Files/AppData/Config/watchrarr/db:/app/db
10 | - /portainer/Files/AppData/Config/watchrarr:/app/watch
11 |
--------------------------------------------------------------------------------
/Template/Stack/webcheck.yml:
--------------------------------------------------------------------------------
1 | version: '3.9'
2 | services:
3 | web-check:
4 | container_name: Web-Check
5 | image: lissy93/web-check
6 | ports:
7 | - 3333:3000
8 | restart: unless-stopped
9 |
--------------------------------------------------------------------------------
/Template/Stack/webtrees.yml:
--------------------------------------------------------------------------------
1 | services:
2 | webtrees_db:
3 | image: postgres:16
4 | container_name: webtrees_db
5 | hostname: webtrees_db
6 | mem_limit: 1g
7 | cpu_shares: 768
8 | security_opt:
9 | - no-new-privileges:true
10 | healthcheck:
11 | test: ["CMD", "pg_isready", "-q", "-d", "webtrees", "-U", "webtreesusr"]
12 | timeout: 45s
13 | interval: 10s
14 | retries: 10
15 | volumes:
16 | - /portainer/Files/AppData/Config/webtrees/db:/var/lib/postgresql/data:rw
17 | environment:
18 | POSTGRES_DB: webtrees
19 | POSTGRES_USER: webtreesuser
20 | POSTGRES_PASSWORD: webtreespass
21 | restart: on-failure:5
22 |
23 | webtrees:
24 | image: ghcr.io/nathanvaughn/webtrees:latest
25 | container_name: Webtrees
26 | hostname: webtrees
27 | security_opt:
28 | - no-new-privileges:true
29 | ports:
30 | - 5495:80
31 | volumes:
32 | - /portainer/Files/AppData/Config/webtrees/data:/var/www/webtrees/data:rw
33 | environment:
34 | TZ: Europe/Athens
35 | BASE_URL: https://webtrees.homelab # Input a correct url for your homelab
36 | PRETTY_URLS: TRUE
37 | WT_USER: xneo1
38 | WT_PASS: webtreespwd
39 | WT_NAME: Your Name
40 | WT_EMAIL: me@email.com
41 | PHP_MEMORY_LIMIT: 8192M
42 | PHP_MAX_EXECUTION_TIME: 3600
43 | PHP_POST_MAX_SIZE: 512M
44 | PHP_UPLOAD_MAX_FILE_SIZE: 512M
45 | DB_HOST: webtrees_db
46 | DB_PORT: 5432
47 | POSTGRES_USER: webtreesusr
48 | POSTGRES_PASSWORD: webtreespwd
49 | DB_TYPE: pgsql
50 | DB_PREFIX: wt_
51 | POSTGRES_DB: webtrees
52 | HTTPS_REDIRECT: False
53 | HTTPS: False
54 | restart: on-failure:5
55 |
--------------------------------------------------------------------------------
/Template/Stack/whisparr.yml:
--------------------------------------------------------------------------------
1 | services:
2 | get_iplayer:
3 | image: ghcr.io/thespad/whisparr:latest
4 | container_name: whisparr
5 | environment:
6 | - PUID=1000
7 | - PGID=1000
8 | - TZ=Europe/Athens
9 | volumes:
10 | - /portainer/Files/AppData/Config/whisparr:/config
11 | - /portainer/Files/AppData/Config/whisparr/downloads:/downloads
12 | ports:
13 | - 6969:6969
14 | restart: unless-stopped
15 |
--------------------------------------------------------------------------------
/Template/Stack/wordpress.yml:
--------------------------------------------------------------------------------
1 | services:
2 | wordpress:
3 | image: wordpress:php8.2
4 | container_name: WordPress
5 | hostname: wordpress
6 | healthcheck:
7 | test: curl -f http://localhost:80/ || exit 1
8 | ports:
9 | - 8195:80
10 | depends_on:
11 | wordpress_db:
12 | condition: service_started
13 | wordpress_redis:
14 | condition: service_healthy
15 | phpmyadmin:
16 | condition: service_healthy
17 | volumes:
18 | - /portainer/Files/AppData/Config/wordpress:/var/www/html:rw
19 | - /portainer/Files/AppData/Config/wordpress/upload.ini:/usr/local/etc/php/conf.d/upload.ini:rw
20 | environment:
21 | WORDPRESS_DB_HOST: wordpress_db
22 | WORDPRESS_DB_USER: xneo1
23 | WORDPRESS_DB_PASSWORD: thepaassword
24 | WORDPRESS_DB_NAME: thewp_db
25 | restart: on-failure:5
26 |
27 | wordpress_db:
28 | image: mysql:8.0
29 | container_name: WordPress-DB
30 | security_opt:
31 | - no-new-privileges:true
32 | hostname: wordpress_db
33 | ports:
34 | - 3307:3306
35 | environment:
36 | MYSQL_DATABASE: xneo1_db
37 | MYSQL_USER: xneo1
38 | MYSQL_PASSWORD: xneo1pwd
39 | MYSQL_ROOT_PASSWORD: rootpass
40 | TZ: Europe/Athens
41 | volumes:
42 | - /portainer/Files/AppData/Config/wordpress/db:/var/lib/mysql:rw
43 | restart: on-failure:5
44 |
45 | wordpress_redis:
46 | image: redis
47 | hostname: wordpress_redis
48 | container_name: WordPress-REDIS
49 | user: 1026:100
50 | healthcheck:
51 | test: ["CMD-SHELL", "redis-cli ping || exit 1"]
52 | volumes:
53 | - /portainer/Files/AppData/Config/wordpress/redis:/data:rw
54 | environment:
55 | TZ: Europe/Athens
56 | restart: on-failure:5
57 |
58 | phpmyadmin:
59 | image: phpmyadmin
60 | hostname: wordpress-phpmyadmin
61 | healthcheck:
62 | test: curl -f http://localhost:80/ || exit 1
63 | container_name: WordPress-phpMyAdmin
64 | ports:
65 | - 2500:80
66 | environment:
67 | PMA_HOST: wordpress_db
68 | PMA_PORT: 3306
69 | restart: on-failure:5
70 |
--------------------------------------------------------------------------------
/Template/Stack/xwiki.yml:
--------------------------------------------------------------------------------
1 | networks:
2 | bridge:
3 | driver: bridge
4 | services:
5 | web:
6 | image: "xwiki:lts-mariadb-tomcat"
7 | container_name: xwiki-mariadb-tomcat-web
8 | depends_on:
9 | - db
10 | ports:
11 | - "8080:8080"
12 | environment:
13 | - DB_USER=xwiki
14 | - DB_PASSWORD=xwiki
15 | - DB_HOST=xwiki-mariadb-db
16 | volumes:
17 | - /portainer/Files/AppData/Config/xwiki/data:/usr/local/xwiki
18 | networks:
19 | - bridge
20 | db:
21 | image: "mariadb:10.5"
22 | container_name: xwiki-mariadb-db
23 | volumes:
24 | - /portainer/Files/AppData/Config/xwiki/xwiki.cnf:/etc/mysql/conf.d/xwiki.cnf
25 | - /portainer/Files/AppData/Config/xwiki/mariadb:/var/lib/mysql
26 | - ./init.sql:/docker-entrypoint-initdb.d/init.sql
27 | environment:
28 | - MYSQL_ROOT_PASSWORD=xwiki
29 | - MYSQL_USER=xwiki
30 | - MYSQL_PASSWORD=xwiki
31 | - MYSQL_DATABASE=xwiki
32 | networks:
33 | - bridge
34 | volumes:
35 | mariadb-data: {}
36 | xwiki-data: {}
37 |
--------------------------------------------------------------------------------
/Template/Stack/your_spotify.yml:
--------------------------------------------------------------------------------
1 | services:
2 | server:
3 | image: yooooomi/your_spotify_server
4 | restart: always
5 | ports:
6 | - "8884:8080"
7 | links:
8 | - mongo
9 | depends_on:
10 | - mongo
11 | environment:
12 | - API_ENDPOINT=http://localhost:8884 # This MUST be included as a valid URL in the spotify dashboard (see below)
13 | - CLIENT_ENDPOINT=http://localhost:3084
14 | - SPOTIFY_PUBLIC=__your_spotify_client_id__
15 | - SPOTIFY_SECRET=__your_spotify_secret__
16 | - CORS=http://localhost:3084,http://localhost:3085 # all if you want to allow every origin
17 | mongo:
18 | container_name: mongo
19 | image: mongo:4.4.8
20 | volumes:
21 | - /portainer/Files/AppData/Config/your_spotify/db:/data/db
22 |
23 | web:
24 | image: yooooomi/your_spotify_client
25 | restart: always
26 | ports:
27 | - "3084:3000"
28 | environment:
29 | - API_ENDPOINT=http://localhost:8884
30 |
--------------------------------------------------------------------------------
/Template/template3.json:
--------------------------------------------------------------------------------
1 | {
2 | "version": "3",
3 | "templates": [
4 | {
5 | "type": "container",
6 | "title": "AdGuard Home",
7 | "description": "Network-wide ads & trackers blocking DNS server.",
8 | "platform": "linux",
9 | "categories": [
10 | "DNS",
11 | "Privacy",
12 | "Networking"
13 | ],
14 | "logo": "https://raw.githubusercontent.com/xneo1/portainer_templates/master/logos/adguard.png",
15 | "image": "adguard/adguardhome:latest",
16 | "ports": [
17 | {
18 | "host": "53",
19 | "container": "53/udp"
20 | },
21 | {
22 | "host": "67",
23 | "container": "67/udp"
24 | },
25 | {
26 | "host": "68",
27 | "container": "68/udp"
28 | },
29 | {
30 | "host": "80",
31 | "container": "80/tcp"
32 | },
33 | {
34 | "host": "443",
35 | "container": "443/tcp"
36 | },
37 | {
38 | "host": "3000",
39 | "container": "3000/tcp"
40 | },
41 | {
42 | "host": "853",
43 | "container": "853/tcp"
44 | },
45 | {
46 | "host": "5443",
47 | "container": "5443/tcp"
48 | }
49 | ],
50 | "volumes": [
51 | {
52 | "bind": "/opt/adguard/work",
53 | "container": "/opt/adguardhome/work"
54 | },
55 | {
56 | "bind": "/opt/adguard/conf",
57 | "container": "/opt/adguardhome/conf"
58 | }
59 | ],
60 | "restart_policy": "unless-stopped"
61 | },
62 | {
63 | "type": "stack",
64 | "title": "Authelia",
65 | "description": "Self-hosted Single Sign-On and 2FA for applications.",
66 | "platform": "linux",
67 | "categories": [
68 | "Security",
69 | "Authentication",
70 | "SSO"
71 | ],
72 | "logo": "https://raw.githubusercontent.com/xneo1/portainer_templates/master/logos/authelia.png",
73 | "note": "Deploys using external Docker Compose file.",
74 | "repository": {
75 | "url": "https://raw.githubusercontent.com/xneo1/portainer_templates/master/Stacks/authelia.yml"
76 | }
77 | }
78 | ]
79 | }
80 |
--------------------------------------------------------------------------------
/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "selfhosted_templates",
3 | "version": "1.0.0",
4 | "description": "Portainer Templates for Selfhosted Projects/Homelabs.",
5 | "private": true,
6 | "devDependencies": {
7 | "jsonlint": "^1.6.3",
8 | "yaml-validator": "^4.0.0"
9 | },
10 | "scripts": {
11 | "pretest": "jsonlint Template/template.json --quiet",
12 | "test": "yaml-validator Template/Stack/*"
13 | },
14 | "repository": {
15 | "type": "git",
16 | "url": "git+https://github.com/xneo1/portainer_templates.git"
17 | },
18 | "author": "xneo1",
19 | "license": "GPLv3"
20 | }
21 |
--------------------------------------------------------------------------------