This repository contains scripts and configurations for managing SSL/TLS certificates and deploying an Icecast server using Docker.
Prerequisites:
- A domain name pointing to your server.
- Docker and Docker Compose installed on your server.
- Port 80 open, for Let's Encrypt certificate generation.
- Ports 8000 (HTTP) and 8443 (HTTPS) open on your server (or the ports you choose to use).
#Create a directory for the Icecast server:
mkdir icecast
cd icecast
#Download the files to your server:
wget https://raw.githubusercontent.com/madalozzo/docker-icecast/refs/heads/main/create-certs.sh
wget https://raw.githubusercontent.com/madalozzo/docker-icecast/refs/heads/main/docker-compose.yml
wget https://raw.githubusercontent.com/madalozzo/docker-icecast/refs/heads/main/icecast.xml
chmod +x create-certs.sh
Edit the create-certs.sh script and set the DOMAIN variable to your domain name and adjust paths if necessary.
./create-certs.shAdd the following line to your crontab to renew the certificates automatically:
45 4 * * 2 /home/ubuntu/icecast/create-certs.sh > /home/ubuntu/icecast/create-certs.log 2>&1- Edit passwords
- Edit the
icecast.xmlfile and set thehostnameattribute in the<hostname>element to your domain name. - Edit ports if necessary.
docker compose up -d- Open your browser and go to
https://your-domain.com:8443to access the Icecast server. - Use the
sourcepassword to connect your streaming software to the Icecast server.
This project is licensed under the MIT License - see the LICENSE file for details.