Sign inSign up

xthursdayx/gpodder-docker

By xthursdayx

•Updated over 2 years ago

A dockerized version of the gPodder podcatcher with a built-in browser-based GUI.

Image
14

100K+

xthursdayx/gpodder-docker repository overview

⁠** Attention Existing gPodder Docker users **

This image has been rebased and the config directory structure has changed slightly, along with the WebUI port. If you have settings and/or subscription data you'd like to preserve, please be sure to copy the contents of /config/gPodder to /config after pulling the latest image and then restart your container. Please also update your WebUI port to <port>:3000

⁠gPodder Docker

GitHub Workflow Status (event) Docker Pulls Docker Image Size (tag) Docker Image Size (tag) GitHub release (latest by date) GitHub

A dockerized version of the gPodder⁠ podcast client with a built-in browser-based GUI.

gPodder⁠ is a simple, open source podcast client written in Python using GTK+. In development since 2005 with a proven, mature codebase.

⁠Application Setup

This image sets up the gPodder desktop app and makes its interface available via Guacamole in your web browser. The interface is available at http://your-ip:3000.

By default, there is no password set for the main gui. Optional environment variable PASSWORD will allow setting a password for the user abc.

You can access advanced features of the Guacamole remote desktop using ctrl+alt+shift enabling you to use remote copy/paste and different languages.

⁠gPodder themes

Two versions of this image are available, one with gPodder running with a light GTK theme and one with a dark theme. There are tagged light and dark versions of the image, and light and dark version of each SemVer tagged release. Using the latest tag or no tag at all will default to the the lasest version of image and the light theme.

ThemeTag
Lightlatest/light
Lightv*..-light
Darkdark
Darkv*..-dark

⁠Usage

Here are some examples to help you get started creating a container. If you are an UNRAID user you can access my UNRAID gPodder template⁠ in Community Apps.

⁠docker-compose

Compatible with docker-compose v2 schemas.

---
version: "2.1"
services:
  gpodder:
    image: xthursdayx/gpodder-docker
    container_name: gPodder
    environment:
      - PUID=99
      - PGID=100
      - TZ=America/New_York
      - PASSWORD= #optional
    volumes:
      - /path/to/config:/config
      - /path/to/downloads:/downloads
    ports:
      - 3000:3000
    restart: unless-stopped
⁠docker cli
docker run -d \
  --name=gPodder \
  -e PUID=99 \
  -e PGID=100 \
  -e TZ=America/new_York \
  -e PASSWORD= `#optional` \
  -p 3000:3000 \
  -v /path/to/config:/config \
  -v /path/to/downloads:/downloads \
  --restart unless-stopped \
  xthursdayx/gpodder-docker

⁠Parameters

Container images are configured using parameters passed at runtime (such as those listed above). These parameters are separated by a colon and indicate <external>:<internal> respectively. For example, -p 8080:80 would expose port 80 from inside the container to be accessible from the host's IP on port 8080 outside the container. You can change the external/host port and volume mappings to suit your needs.

ParameterFunction
-p 3000HTTP access to the gPodder WebUI.
-e PUID=99for UserID - see below for more information.
-e PGID=100for GroupID - see below for more information.
-e TZ=America/New_YorkSpecify a timezone to use, e.g. America/New_York.
-e PASSWORD=Optionally set a password for the gui.
-v /configDirectory where gPodder's configuration and database files will reside, so you won't lose data when you update, reinstall, etc.
-v /downloadsThe directory gPodder will download your podcasts to.

⁠Environment variables from files (Docker secrets)

You can set any environment variable from a file by using a special prepend FILE__.

As an example:

-e FILE__PASSWORD=/run/secrets/mysecretpassword

Will set the environment variable PASSWORD based on the contents of the /run/secrets/mysecretpassword file.

⁠User / Group Identifiers

When using volumes (-v flags) permissions issues can arise between the host OS and the container, you can avoid this by specifying the user PUID and group PGID.

Ensure any mapped volume directories on your host machine are owned by the same user you specify and you will avoid any permissions issues.

In this instance PUID=1000 and PGID=1000, to find yours using the following command:

  $ id <username> # Replace with your username
    uid=1000(dockeruser) gid=1000(dockergroup) groups=1000(dockergroup)

⁠Versions

  • 06.04.23: - Update GPodder to 3.11.1 and update dependencies.

  • 19.06.21: - Rebase to rdesktop-web Alpine baseimage.

If you appreciate my work please consider buying me a coffee, cheers! 😁

Donate

Tag summary

Content type

Image

Digest

sha256:d2355fc99…

Size

666.1 MB

Last updated

over 2 years ago

docker pull xthursdayx/gpodder-docker