Local development setup
Try Podcast-Server — or hack on it — on a throwaway k3d cluster in ~5 minutes. Skaffold builds the images from source and live-reloads on every change.
This is the dev workflow, not a way to self-host
This page describes the developer setup: the cluster is k3d, images are built from source, data lives under /tmp and disappears when the cluster is torn down. Don't run your real podcast library on this. For a real install, go to Deploy to production.
Prerequisites
Steps
git clone https://gitlab.com/davinkevin/Podcast-Server.git
cd Podcast-Server
# 1. Generate the TLS certs for podcast.k8s.local (one-off)
task certificates:generate
# 2. Create the k3d cluster + deploy via skaffold
task skaffold:devThe first run pulls base images and builds backend / ui / storage — give it a few minutes. Once skaffold reports Deployments stabilized, open https://podcast.k8s.local.
Live reload
task skaffold:dev keeps watching the source tree. Edit code and skaffold rebuilds and redeploys the impacted images automatically. Hit Ctrl+C to tear it down.
What does task skaffold:dev actually do?
- Creates a k3d cluster named
podcast-serverwith ports80and443mapped to the load-balancer (Traefik disabled). - Installs Contour + the Gateway API CRDs into the cluster.
- Runs
skaffold devagainst thedistribution/kubernetes/overlays/podcast.k8s.localoverlay — which useshostPathvolumes under/tmp/podcast-server/(no manualmkdirneeded).
Architecture
The application is built for linux/amd64 only. arm nodes (Raspberry Pi…) are not supported.