You've successfully subscribed to Castopod Blog
Great! Next, complete checkout for full access to Castopod Blog
Welcome back! You've successfully signed in.
Success! Your account is fully activated, you now have access to all content.
Success! Your billing info is updated.
Billing info update failed.

Install Castopod in 5mn

Installing Castopod is pretty straighforward. You do not need advanced skills in server administration. Depending on the traffic you expect, you may choose a dedicated server, a virtual machine or even a shared hosting (as long as it runs php/mysql and allows to specify root folder).

Benjamin Bellamy
Benjamin Bellamy
Please note that Castopod is still under heavy development (in alpha version): it may not be 100% stable and some features are still being worked on.

For your peace of mind we recommend that you install Castopod on CloudPanel: CloudPanel will take care of PHP versions and dependencies, MySQL, LetsEncypt certificate, Redis cache…

Castopod is built on CodeIgniter4. Its requirements are:

Under Debian/Ubuntu, you probably need to run:

$ sudo apt-get install nginx mysql-server php-fpm python3-certbot-nginx
$ sudo mysql_secure_installation
$ sudo apt-get install php-mysqlnd php-json php-xml php-intl php-mbstring php-curl

You also need a rewrite module:

  • Apache needs mod_rewrite enabled and you need AllowOverride All in order to have public/.htaccess enabled, or you need the following directive in Apache configuration file:
<IfModule mod_rewrite.c>
	Options +FollowSymlinks
	RewriteEngine On
	RewriteCond %{REQUEST_FILENAME} -s [OR]
	RewriteCond %{REQUEST_FILENAME} -l [OR]
	RewriteCond %{REQUEST_FILENAME} -d
	RewriteRule ^.*$ - [NC,L]
	RewriteRule ^.*$ index.php [NC,L]
</IfModule>
  • NGinx configuration file needs the followings:
try_files $uri $uri/ /index.php?$args;
index index.php index.html;

Troubleshooting: If you get an error 500 page and do not know how to fix it, add CI_ENVIRONMENT=development in your .env file in order to get the full error message.

  1. Download and unzip Castopod's bundle, then upload it to your server.
    Filezilla
  2. Modify your hosting parameters so that root folder points to Castopod's public/ subfolder.
    Domain-Configuration
  3. Open your favorite web browser. Go to your website. Since Castopod is not configured yet, you should see an error, that's totally fine: Don't panic.
    Error
  4. Go to /cp-install page. Follow the instructions:
    Install-step-1
    Note: Use media base URL if you have a CDN for your audio files and/or an external analytics service.
  5. Enter database information.
    Install-step-2
  6. Select the cache system you want to use. (Redis and Memcached are faster but they require additionnal installation and are usually not available on personal hostings.)
    Install-step-3
  7. You are almost there, the database and its tables are now created. You just need to create a superadmin user.
    Install-step-4
  8. You may now connect to Castopod's admin…
    Login
  9. You are all set. Start podcasting!
    Castopod-Admin-Panel
  10. For broadcasting social activities to the fediverse, add a cron task on
    your web server to run every minute (replace the paths accordingly):
    * * * * * /path/to/php /path/to/castopod/public/index.php scheduled-activities
    Cron-Task

To continue, create a podcast in 3mn with Castopod.

Castopod source files are available here:
https://code.castopod.org/adaures/castopod/-/releases

Photo by Pixabay.

CastopodTips & Tricks

Benjamin Bellamy

Podcasts, e-commerce & open-source. Father of Castopod. CEO of Ad Aures.