unsubbed.co

PatchPanda

Self-hosted container management tool that provides docker Compose stack update manager.

Overview

Self-hostable Docker Compose stack update manager. Self-hostable Docker Compose stack update manager. - dkorecko/PatchPanda The project has 335 GitHub stars and is licensed under MIT.

Getting Started

Source: GitHub README

services:
  ### THIS IS OPTIONAL
  apprise-api: # You can bring your own Apprise API (or completely not use it), just make sure to update the environment variable for PatchPanda
    image: caronc/apprise:latest
    container_name: apprise-api
    environment:
      - APPRISE_STATEFUL_MODE=disabled
    ports:
      - 6603:8000
  ### OPTIONAL ENDS HERE

  patchpanda:
    container_name: patchpanda-app
    image: ghcr.io/dkorecko/patchpanda:latest
    environment:
      - APPRISE_API_URL=http://apprise-api:8000 # optional, if you run an Apprise API and want to use it for notifications
      - APPRISE_NOTIFICATION_URLS=discord://webhook_id/webhook_token,mailto://user:password@gmail.com # optional, comma-separated list of Apprise notification URLs
      - DISCORD_WEBHOOK_URL=https://discord.com/api/webhooks/... # optional, use your discord webhook URL here for the direct discord integration
      - GITHUB_USERNAME=yourusername # use your GitHub username here
      - GITHUB_PASSWORD=yourtoken # use your GitHub personal access token here
      - BASE_URL=http://localhost:5093 # adjust to what URL you will use to access PatchPanda
      # - PORTAINER_URL=http://portainer:9000 # if you wish to include stacks fully managed by Portainer
      # - PORTAINER_IGNORE_SSL=true # optional, only for trusted self-signed certs
      # - PORTAINER_ACCESS_TOKEN=your_token # if you wish to include stacks fully managed by Portainer. Generate this in Portainer under User Settings → Access Tokens.
      # - PORTAINER_USERNAME=admin # optional legacy authentication, if you wish to include stacks fully managed by Portainer
      # - PORTAINER_PASSWORD=CHANGEME # optional legacy authentication, if you wish to include stacks fully managed by Portainer
      # - OLLAMA_URL=http://localhost:11434 # optional, if you wish to use Ollama or compatible LLM API for release note summarization
      # - OLLAMA_MODEL=llama3 # optional, model name to use for summarization
      # - OLLAMA_NUM_CTX=32768 # optional, context size to be used
    volumes:
      - /var/run/docker.sock:/var/run/docker.sock:rw # This can remain, no matter whether you're using Docker on Linux or Windows
      # DOCKER ON LINUX VARIANT
      - /srv/www:/srv/www:rw # This should be a path which contains the compose files as part of its subdirectories. For PatchPanda to discover compose files, the container path should match the host path. This is not a general Docker Compose requirement.
      # DOCKER ON WINDOWS VARIANT
      # /c/Users/PC/testing-compose:/c/Users/PC/testing-compose:rw # This should be a path which contains the compose files as part of its subdirectories. For PatchPanda to discover compose files, the container path should match the host path. This is not a general Docker Compose requirement. Make sure to format the paths like this, given that your initial path was C:\Users\PC\testing-compose.
      - ./data:/app/data:rw # persistent data storage for SQLite
    ports:
      - "5093:8080" # adjust as needed
    restart: unless-stopped

Normalized Features

Source: tool-features-normalized.json

docker, docker compose, rest api, sqlite, webhooks.

Features

Integrations & APIs

  • REST API
  • Webhooks