Compare commits

..

10 Commits

Author SHA1 Message Date
7389e6ed96 fix: 📝 Fixed sftp config readme
Added a detailed explanation inside the README for the sftpgo configuration, this contains an extra step for synology users.
2026-03-04 14:34:01 +00:00
b28b2ce4e6 feat: 🎨 Added a new portainer configuration for sftpgo
Provided a new concise portainer configuration allowing users to deploy sftpgo if they wish.
2026-03-04 14:16:46 +00:00
Gitea Action
26a2462631 feat: initialized templates/sftpgo. 2026-03-04 14:07:28 +00:00
f4c0d50642 feat: 🎨 Added stirling pdf portainer configuration
Added a new portainer configuration that can deploy a quick instance of stirling-pdf.
2026-03-03 14:26:20 +00:00
Gitea Action
a743c778d6 feat: initialized templates/stirling-pdf. 2026-03-03 14:16:18 +00:00
c3c6720401 feat: 🎨 Added a new portainer configuration setup for home-assistant.
Implemented a new portainer configuration which would allow users to implement a home assistant setup on their current portainer configuration.
2026-03-03 14:08:04 +00:00
Gitea Action
f5d41e4322 feat: initialized templates/home-assistant. 2026-03-03 13:23:43 +00:00
407f87ac1f docs(lidatube): Update README with correct repository and Docker Hub links 2026-03-03 01:05:59 +00:00
06b8074c63 docs(lidatube): Update README with detailed template information 2026-03-03 01:02:17 +00:00
ede6cddfed feat(lidatube): Add docker-compose configuration file 2026-03-03 01:00:28 +00:00
8 changed files with 242 additions and 6 deletions

View File

@@ -0,0 +1,26 @@
# Home Assistant (Portainer template)
Home Assistant is an open-source home automation platform that puts local control and privacy first. It acts as a central hub for smart home devices, allowing for complex automation and integration across thousands of different brands.
Quick notes:
- **Network Mode**: For many integrations (like discovery of smart bulbs or TVs), it is highly recommended to use `network_mode: host`.
- **Persistence**: Ensure the `/config` directory is mapped to a persistent volume to save your configuration, dashboards, and integrations.
- **Devices**: If you are using Zigbee or Z-Wave USB sticks, you will need to map the device path (e.g., `/dev/ttyUSB0`) into the container.
Usage:
1. Import the compose file into Portainer's Stacks or App Templates.
2. Configure the volume mapping for the configuration folder.
3. (Optional) Set the timezone environment variable (e.g., `TZ=America/New_York`).
4. Deploy the stack via Portainer.
5. Access the web interface at `http://<your-ip>:8123` to begin the onboarding process.
Helpful links:
- Official Website: https://www.home-assistant.io/
- Documentation: https://www.home-assistant.io/docs/
- GitHub Repository: https://github.com/home-assistant/core
- Docker Hub: https://hub.docker.com/r/homeassistant/home-assistant
**Status:** Ready for configuration

View File

@@ -0,0 +1,22 @@
services:
homeassistant:
image: homeassistant/home-assistant:stable
container_name: homeassistant
# Resource constraints to prevent host exhaustion
mem_limit: 2g
cpu_shares: 512
security_opt:
- no-new-privileges:true
# Healthcheck ensures the web interface is responsive
healthcheck:
test: ["CMD", "curl", "-f", "http://localhost:8123/"]
interval: 30s
timeout: 10s
retries: 3
network_mode: host # Required for discovery features (mDNS, UPnP)
volumes:
- ./config:/config:rw
environment:
- TZ=${TIMEZONE:-UTC}
# Restart policy for stability
restart: unless-stopped

View File

@@ -1,8 +1,24 @@
# lidatube (templates)
# LidaTube (Portainer template)
### Description
Description for lidatube goes here.
LidaTube is a tool designed to bridge the gap between YouTube and your personal media library, often used for automating the downloading and organization of YouTube content into a format compatible with media servers like Lidarr.
### Configuration
- Path: templates/lidatube/docker-compose.yml
- Status: Draft
Quick notes:
- **Integration**: Designed to work alongside Lidarr to manage music videos or audio content sourced from YouTube.
- **Persistence**: Ensure you map volumes for the configuration files and the download directory to prevent data loss.
- **Dependencies**: Requires a functional internet connection and may require `ffmpeg` within the container environment for transcoding.
Usage:
1. Import the compose file into Portainer's Stacks or App Templates.
2. Configure the volume mappings to point to your media library and config folder.
3. Set environment variables for any specific naming conventions or quality preferences.
4. Deploy the stack via Portainer.
5. Access the web interface (if applicable) to link with your Lidarr instance.
Helpful links:
- GitHub Repository: https://github.com/TheWicklowWolf/LidaTube
- Docker Hub: https://hub.docker.com/r/thewicklowwolf/lidatube
**Status:** Ready for configuration

View File

@@ -0,0 +1,23 @@
services:
lidatube:
image: thewicklowwolf/lidatube:latest
container_name: lidatube
volumes:
# Host path for application configuration. Change this to your desired path.
- ./config/lidatube:/lidatube/config
# Host path for music downloads. Change this to your desired path.
- ./data/lidatube/downloads:/lidatube/downloads
- /etc/localtime:/etc/localtime:ro
ports:
- 9274:5000
environment:
# Set PUID and PGID to match your host user's UID and GID for proper file permissions.
# You can find these by running 'id <username>' on your host machine.
- PUID=1000
- PGID=1000
- sync_schedule=19,20,21,22,23,0,1,2,3,4,5
- attempt_lidarr_import=False
- thread_limit=1
- sleep_interval=1
restart: unless-stopped

View File

@@ -0,0 +1,36 @@
# SFTPGo (Portainer template)
SFTPGo is a fully featured and highly configurable storage routing server with SFTP, HTTP/S, FTP/S and WebDAV support. It allows you to securely share files with local and remote users.
Quick notes:
- **Protocols**: Supports SFTP, FTP/S, WebDAV, and a built-in Web UI for file management.
- **Storage**: Can serve local storage, S3, Google Cloud Storage, and Azure Blob.
- **Authentication**: Supports multiple backends including SQLite, MySQL, PostgreSQL, and LDAP/OIDC.
Usage:
1. Import the compose file into Portainer's Stacks or App Templates.
2. Configure the environment variables for the initial admin user and database settings.
3. Map the data volume to persist user data and configuration. (See Extra Note)
4. Deploy the stack via Portainer.
5. Access the admin web interface at `http://<your-ip>:8080/web/admin`.
Helpful links:
- GitHub Repository: https://github.com/drakkan/sftpgo
- Documentation: https://github.com/drakkan/sftpgo/tree/main/docs
Extra Note:
Using a portainer install on a Synology Nas requires some extra folder permission configuration. You must give the data folder read and write permissions to everyone. This can be done with:
1. Open **File Station** on your Synology NAS.
2. Right-click the folder mapped to SFTPGo and select **Properties**.
3. Go to the **Permission** tab.
4. Click **Create** or **Edit** to add the `Everyone` group.
5. Check **Read** and **Write** permissions.
6. Check the box **Apply to this folder, sub-folders and files**.
7. Click **Done** and **Save**.
**Status:** Ready for configuration

View File

@@ -0,0 +1,50 @@
services:
sftpgo:
image: drakkan/sftpgo:latest
user: "${PUID}:${PGID}"
container_name: sftpgo
ports:
- 8813:8080 # HTTP
- 2026:2022 # SFTP
environment:
# Fixes the "id_rsa: permission denied" error by using the mapped volume
SFTPGO_CONFIG_DIR: /srv/sftpgo
SFTPGO_WEBDAVD__BINDINGS__0__PORT: 5007
SFTPGO_DATA_PROVIDER__DRIVER: mysql
SFTPGO_DATA_PROVIDER__NAME: sftpgo
SFTPGO_DATA_PROVIDER__HOST: mysql
SFTPGO_DATA_PROVIDER__PORT: 3306
SFTPGO_DATA_PROVIDER__USERNAME: ${DB_USER}
SFTPGO_DATA_PROVIDER__PASSWORD: ${MYSQL_USER_PWD}
SFTPGO_COMMON__DEFENDER__ENABLED: "true"
SFTPGO_COMMON__DEFENDER__BAN_TIME: 15
SFTPGO_COMMON__DEFENDER__BAN_TIME_INCREMENT: 100
SFTPGO_COMMON__DEFENDER__THRESHOLD: 5
SFTPGO_COMMON__DEFENDER__OBSERVATION_TIME: 15
volumes:
- ./data:/srv/sftpgo:rw
- ./user_data:/user_data
depends_on:
mysql:
condition: service_healthy
restart: on-failure:8
mysql:
image: mariadb:11.8-noble
container_name: sftpgo-db
healthcheck:
# Standard MariaDB 11.x healthcheck using root credentials
test: ["CMD-SHELL", "mariadb-admin ping -h localhost -u root -p$${MYSQL_ROOT_PWD} || exit 1"]
interval: 10s
timeout: 5s
retries: 5
start_period: 30s
environment:
TZ: ${TZ}
MYSQL_DATABASE: sftpgo
MYSQL_USER: ${DB_USER}
MYSQL_PASSWORD: ${MYSQL_USER_PWD}
MYSQL_ROOT_PASSWORD: ${MYSQL_ROOT_PWD}
volumes:
- ./db:/var/lib/mysql:rw
restart: on-failure:5

View File

@@ -0,0 +1,24 @@
# Stirling-PDF (Portainer template)
Stirling-PDF is a powerful, locally hosted web-based PDF manipulation tool. It allows you to perform various operations on PDF files, such as merging, splitting, rotating, converting, and adding watermarks, all while keeping your files private on your own infrastructure.
Quick notes:
- **Privacy**: All files are processed locally on your server; no data is sent to external services.
- **Functionality**: Includes a wide range of features like OCR, compression, repair, and security (password protection).
- **Resources**: Depending on the operations (like OCR), this container may require significant CPU and RAM.
Usage:
1. Import the compose file into Portainer's Stacks or App Templates.
2. Configure the environment variables such as `DOCKER_ENABLE_SECURITY` if you wish to add authentication.
3. Map the necessary volumes if you want to persist custom settings or logs.
4. Deploy the stack via Portainer.
5. Access the web interface at `http://<your-ip>:8080`.
Helpful links:
- GitHub Repository: https://github.com/Stirling-Tools/Stirling-PDF
- Documentation: https://stirlingpdf.com/docs
**Status:** Ready for configuration

View File

@@ -0,0 +1,39 @@
services:
stirling-pdf:
container_name: Stirling-PDF
image: stirlingtools/stirling-pdf
mem_limit: 4g
cpu_shares: 1024
security_opt:
- no-new-privileges:true
healthcheck:
test: timeout 10s bash -c ':> /dev/tcp/127.0.0.1/8080' || exit 1
interval: 10s
timeout: 5s
retries: 3
start_period: 90s
ports:
- 7890:8080
volumes:
# Use relative paths or environment variables for portability
- ./tessdata:/usr/share/tessdata:rw
- ./configs:/configs:rw
- ./logs:/logs:rw
environment:
PUID: ${PUID:-1000}
PGID: ${PGID:-1000}
TZ: ${TIMEZONE:-UTC}
DOCKER_ENABLE_SECURITY: "true"
SECURITY_ENABLELOGIN: "true"
SECURITY_INITIALLOGIN_USERNAME: ${ADMIN_USERNAME:-admin}
SECURITY_INITIALLOGIN_PASSWORD: ${ADMIN_PASSWORD:-password123}
INSTALL_BOOK_AND_ADVANCED_HTML_OPS: "true"
SECURITY_CSRFDISABLED: "true"
SYSTEM_DEFAULTLOCALE: en_US
UI_APPNAME: StirlingPDF
UI_HOMEDESCRIPTION: Stirling PDF Converter, for all your pdf file needs.
UI_APPNAMENAVBAR: StirlingPDF
SYSTEM_MAXFILESIZE: 5000
METRICS_ENABLED: true
SYSTEM_GOOGLEVISIBILITY: false
restart: unless-stopped # Changed to unless-stopped for better reliability