Soulseek Dockers


Recommended Posts

  • 1 month later...
  • 1 year later...
  • 11 months later...

I'm a complete noob with docker, only recently setting up some stuff with it in unraid.  I tried adding danielguerra69's docker and like everyone else couldn't get it to work.  Turns out that the reason is that 32bit apps just don't work properly with docker on unraid - and it's down to unraid's kernel.  The containers I saw were trying to use wine to run a windows soulseek 32bit executable.

 

*However*

 

Soulseek provides a 64bit linux executable.  So, I cloned danielguerra69's project and rebuilt it to use that executable (had to use the nov 2017 beta, feb 2017 crashed all the time).  find the container at whatsalinux/soulseek

 

If you're new with docker as I am, here's the step by step to add it to unraid in docker:

 

  1. Click add container
  2. name = soulseek
  3. repository = whatsalinux/soulseek
  4. categories = downloaders
  5. Docker Hub URL = https://hub.docker.com/r/whatsalinux/soulseek/
  6. Template URL = https://hub.docker.com/r/danielguerra/soulseek/~/dockerfil
  7. Icon URL = http://www.slsknet.org/news/sites/default/files/slsk_bird.jpg
  8. WebUI = http://[IP]:[PORT:5950]/
  9. Network Type = bridge
  10. Privileged = Yes  (got fuse errors without this)
  11. Click Add Another Path, Port or Variable : Select Host Path 
  12. name = Appdata config path |  container path=/home/soulseek/.config/  | host path = /mnt/user/appdata/soulseek/config   
  13. presume you have an "appdata" share, if not, create one, then mkdir -p this directory on unraid:  mkdir -p /mnt/user/appdata/soulseek/{config,Downloads,Music} 
  14. on unraid : chown nobody.users -R /mnt/user/appdata/soulseek/* 
  15. Click Add Another Path, Port or Variable : Select Host Path
  16. name = Host Path 1 | Container Path = /home/soulseek/Music/  | host path = /mnt/user/appdata/soulseek/Music/
  17. Click Add Another Path, Port or Variable : Select Host Path
  18. name = Host Path 2 | Container Path = /home/soulseek/Downloads/  | host path = /mnt/user/appdata/soulseek/Downloads/
  19. Click Add Another Path, Port or Variable : Select Host Path
  20. name = Host Path 3 | Container Path = /home/soulseek/.SoulseekQt/  | host path = /mnt/user/appdata/soulseek/SoulseekQt/
  21. Click Add Another Path, Port or Variable : Select Host Port
  22. name = Host Port 1 | container port = 5900 | host port = 5950

From there, let it build, then open a vnc client and hit <unraid ip>:5950

  1. Once you enter your user/pass, choose "/home/soulseek/Music" as your shared directory. 
  2. Under File Sharing, click "Set Download Folder" and choose /home/soulseek/Music
  3. Your config files should persist in /mnt/user/appdata/soulseek/config and load up when you rebuild the container. 
  4. LIkewise, Downloaded Music should persist in /mnt/user/appdata/soulseek/Downloads. 
  5. Add music you wish to share to /mnt/user/appdata/soulseek/Music , or just create a softlink to where you keep it on the array

 

Idk how this would get added to 'community apps', but if someone wants to let me know how that's done..

  • Like 1
Link to comment
  • 3 months later...
  • 2 months later...

@ridge, feel free to modify this, ssl.conf and proxy.conf are part of linuxserver.io's letsencrypt nginx server, but it should run fine without them, the key thing is the /websockify connection upgrade.

 

upstream soulseek {
        server 192.168.1.100:6080;
}

server {
        server_name _;
        listen 80;
        return 301 https://$host$request_uri;
}

server {
    server_name _;
    listen 443 ssl;

    access_log /config/log/nginx/soulseek_access.log;
    error_log /config/log/nginx/soulseek_error.log;

    include /config/nginx/ssl.conf;

    client_max_body_size 0;

    location / {
        include /config/nginx/proxy.conf;
        proxy_pass http://soulseek/;
    }

    location /websockify {
        include /config/nginx/proxy.conf;
        proxy_set_header Upgrade $http_upgrade;
        proxy_set_header Connection "upgrade";
        proxy_pass http://soulseek/;
    }
}

 

 

  • Like 1
Link to comment
  • 1 month later...

Hey @realies, wanted to ask if you'd seen any other instances of filenames not being parsed properly?

 

Eg, filename-error.png, attached. The correct filenames are in filename-proper.png, highlighted. As you can see, the docker is having trouble with special characters like umlauts, and curly single quotes.

 

My music is all tagged from Musicbrainz, and I know it's correct. I'd hate to have to go in and edit the filenames, and right now albums aren't sharing correctly. Any ideas?

filename-error.PNG

filename-proper.PNG

Link to comment
  • 3 weeks later...
  • 3 months later...
  • 2 weeks later...

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.