Skip to content

Custom installation

basings edited this page Jan 30, 2023 · 3 revisions

How to host your own deemixrr instance

Since deemixrr uses docker for deployment, it is pretty easy to spin up your own instance.

This guide assumes you have docker and docker-compose already installed on your system. If you find any errors, and know how to fix them, please edit this guide, so everyone can take advantage of your fix.

  1. Create a folder where all files should be stored

    1. For Windows C:\Software\deemixrr is recommended
    2. For Linux /opt/deemixrr is recommended
    3. In your created dir, create the subdir deemix-config
    4. In your created dir, create the subdir mssql-data
  2. Create your docker-compose.yaml in the folder you created

    1. For Windows use docker-compose.yaml for Windows
    2. For Linux use docker-compose.yaml for Linux
  3. Replace the placeholders in your docker-compose.yaml

    1. Search for THIS-IS-A-NOT-SECURE-PASSWORD-MSSQL and replace it with something more secure (at least 8 characters of which at least 3 of these 4 categories: uppercase letters, lowercase letters, numbers and non-alphanumeric symbols)
    2. Search for THIS-IS-A-NOT-SECURE-PASSWORD-HANGFIRE and replace it with something more secure
    3. Additional for CloudBox Only:
      1. Search and replace both instances of YOURDOMAIN.COM with your Cloudflare domain name
      2. Search and replace YOUREMAILADDRESS with your Cloudflare email address
    4. Replace your paths
      1. Windows
        1. Search and replace C:\Software\deemixrr with the dir you created in step 1
        2. Search and replace C:\Music with the dir where your music files should be stored
      2. Linux
        1. Search and replace /opt/deemixrr with the dir you created at step 1
        2. Search and replace /mnt/unionfs/Media/Audio with the dir where your music files should be stored
    5. Update your Cron jobs: Use crontab.guru or another tool to help you create the schedule for the 2 jobs listed under the deemixrr environment variables section.
  4. Create your deemix files. We use the deemix-config subdir you created earlier

    1. Create your config.json file in the deemix-config subdir
    2. Login to Deezer, and copy the content of the cookie named arl
    3. Create a file with the name .arl in the deemix-config subdir and paste the content of your arl cookie into it
    4. Save both files
  5. Start your instance

    1. Open a shell, type docker-compose up and hit enter
  6. Cloudbox Only

    1. Open Portainer and navigate to Containers
    2. Open deemixrr_deemixrr_1 and scroll down to Network. Select Cloudbox from Join Network and click Join Network
    3. Open deemixrr_mssql_1 and scroll down to Network. Select Cloudbox from Join Network and click Join Network
    4. Restart both of the above containers starting with deemixrr_mssql_1
  7. Register yourself

    1. Open up your browser, and go to http://{YOUR_SERVERS_IP}:5555
    2. Type in your E-Mail and a SECURE password
    3. Submit the form
  8. Create a new folder

    1. On the left side, go to Folder -> Create
    2. ALWAYS use the path you mount your media to as a base path. Since we mount your music from the host to the path /mnt/unionfs inside the container, ALWAYS use this in front of your paths.
    3. Use /mnt/unionfs/Artists as a path, and whatever you want as a name for example
  9. Create an artist

    1. On the left side, go to Artist -> Create
    2. Fill out whatever you want
    3. Select one of the folders you created
    4. Hit submit

You did it 🚀

You successfully added your first artist to the queue. Give deemixrr some time, and voila it starts downloading.

💰 I would appreciate your donation. Just a single $ makes a difference. You can donate here: https://github.com/sponsors/TheUltimateC0der 💰