dtcooper/crazyarms
Crazy Arms Radio Backend. Playout software for the modern, fully de-centralized station.
Crazy Arms Radio Backend โ ๐คช ๐ฆพ ๐ป ๐ฉโ๐ป
Crazy Arms Radio Backend is a flexible and fully featured Internet radio back-end
written from the ground up.
It's specifically written after its author built a few fully decentralized
online radio stations with varying types of scheduling and finding no existing
product fit some common needs out of the box.
Read the documentation for Crazy Arms here.
Quickstart
-
Install Docker and
docker-compose. On macOS, install
Docker for Mac.
On Debian/Ubuntu do the following:# Install Docker (Linux instructions only) curl -fsSL https://get.docker.com | sh # and docker-compose sudo curl \ -L "https://github.com/docker/compose/releases/download/1.29.0/docker-compose-$(uname -s)-$(uname -m)" \ -o /usr/local/bin/docker-compose sudo chmod +x /usr/local/bin/docker-compose # (If you're a non-root user) sudo adduser "$USER" docker # Log back in and out, to make sure you're in the docker group -
Clone Crazy Arms,
git clone https://github.com/dtcooper/crazyarms.git -
Run the thing docker-compose wrapper script
./compose.shto configure and
pull Crazy Arms.cd crazyarms # This will ask you some basic questions. For local development domain # name should be the default of "localhost" ./compose.sh pullIf you want to change any of these settings, edit the
.envfile in the
project directory. (NOTE: A later release will have these containers built
and downloadable from Docker Hub.)(For development only, to build containers from source, run
./compose.sh build
instead ofpullabove. This may take a while.) -
Start Crazy Arms
./compose.sh up -d -
In your web browser, go to the domain name you chose, ie http://localhost/.
Digital Ocean Notes
-
A 2gb + 2 CPU droplet or better is recommended if you're using Zoom, otherwise
the cheapest one will do. -
haveged makes docker-compose run
significantly faster:sudo apt-get install -y haveged
Apple M1 Chipset Notes (aarch64)
It works with the Docker for Mac Apple M1
preview!
However, native aarch64 containers are not provided, so you'll need to build
them from source (./compose.sh build instead of pull). The Zoom container
will need to emulate amd64.
Liquidshop 1.0 Slide Deck
Here's a slide deck
about Crazy Arms from the Liquidshop 1.0 conference
giving a high level overview and some of the technical approaches taken.
License
This project is licensed under the MIT License - see the LICENSE file
for details.