2.3 KiB
Docker Setup for Podcastrr
This document explains how to run Podcastrr using Docker and Docker Compose.
Prerequisites
Quick Start
-
Clone the repository:
git clone https://github.com/yourusername/podcastrr.git cd podcastrr
-
Start the application using Docker Compose:
docker-compose up -d
-
Access the application at http://localhost:5000
Configuration
The application is configured using environment variables in the docker-compose.yml
file. You can modify these variables to customize the application:
FLASK_ENV
: Set todevelopment
for development mode orproduction
for production modeSECRET_KEY
: A secret key for securing the Flask application (change this to a secure random string)DATABASE_URI
: The URI for the SQLite databaseDOWNLOAD_PATH
: The path where podcast episodes will be downloadedLOG_LEVEL
: The logging level (INFO, DEBUG, WARNING, ERROR, CRITICAL)
Persistent Data
The Docker Compose configuration creates two volumes for persistent data:
./downloads:/app/downloads
: Stores downloaded podcast episodes./instance:/app/instance
: Stores the SQLite database
These directories will be created in your project folder and will persist data between container restarts.
Building the Docker Image
If you've made changes to the application code and want to rebuild the Docker image:
docker-compose build
Stopping the Application
To stop the application:
docker-compose down
Viewing Logs
To view the application logs:
docker-compose logs -f
Troubleshooting
Database Issues
If you encounter database issues, you can try:
-
Stopping the application:
docker-compose down
-
Removing the instance directory:
rm -rf instance
-
Starting the application again:
docker-compose up -d
This will recreate the database from scratch.
Permission Issues
If you encounter permission issues with the downloads or instance directories, ensure that they are writable by the Docker container:
chmod -R 777 downloads instance
Note: This is not recommended for production environments. Instead, configure proper user permissions.