Favicon of Castopod

Castopod

Launch and manage your podcasts with a free, open-source hosting platform. Interact directly with your listeners and build a highly engaged community.

Take full control of your audio content with a free and open-source podcast hosting solution designed specifically for creators who value community interaction. Unlike traditional hosting platforms that only distribute your audio, this system provides built-in tools to connect directly with your listeners and foster a dedicated audience.

Enjoy a seamless setup process, as the platform comes pre-packaged with all necessary static assets and dependencies. Whether you are launching a new show or migrating an existing one, you can manage your episodes efficiently while keeping your data secure and independent.

Key features include:

  • Open-source architecture: Maintain complete ownership of your podcast data and hosting environment.
  • Audience interaction: Utilize built-in social features to engage with your listeners directly.
  • Pre-packaged deployment: Get started quickly with all required dependencies and assets included out of the box.

Directory Structure

castopod
db_data
media
redis_data
.env
docker-compose.yml

docker-compose.yml

services:
  app:
    image: castopod/castopod:latest
    container_name: castopod-app
    environment:
      CP_BASEURL: ${CASTOPOD_BASE_URL}
      CP_DATABASE_HOST: mariadb
      CP_DATABASE_NAME: castopod
      CP_DATABASE_USER: castopod
      CP_DATABASE_PASSWORD: ${DB_PASSWORD}
      CP_REDIS_HOST: redis
      CP_REDIS_PASSWORD: ${REDIS_PASSWORD}
      CP_ADMIN_USERNAME: ${ADMIN_USERNAME}
      CP_ADMIN_PASSWORD: ${ADMIN_PASSWORD}
      CP_ADMIN_EMAIL: ${ADMIN_EMAIL}
    volumes:
      - ./media:/var/www/castopod/public/media
    ports:
      - 8000:8000
    depends_on:
      - mariadb
      - redis
    restart: unless-stopped

  mariadb:
    image: mariadb:10.11
    container_name: castopod-db
    environment:
      MYSQL_ROOT_PASSWORD: ${DB_ROOT_PASSWORD}
      MYSQL_DATABASE: castopod
      MYSQL_USER: castopod
      MYSQL_PASSWORD: ${DB_PASSWORD}
    volumes:
      - ./db_data:/var/lib/mysql
    restart: unless-stopped

  redis:
    image: redis:7.0-alpine
    container_name: castopod-redis
    command: --requirepass ${REDIS_PASSWORD}
    volumes:
      - ./redis_data:/data
    restart: unless-stopped

.env

CASTOPOD_BASE_URL=https://podcast.yourdomain.com
DB_ROOT_PASSWORD=your_secure_root_password
DB_PASSWORD=your_secure_db_password
REDIS_PASSWORD=your_secure_redis_password
ADMIN_USERNAME=admin
ADMIN_PASSWORD=your_secure_admin_password
ADMIN_EMAIL=admin@example.com
Categories:

Share:

Ad
Favicon

 

  
 

Similar to Castopod

Favicon

 

  
  
Favicon

 

  
  
Favicon