Skip to content
View in the app

A better way to browse. Learn more.

Unraid

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

[Support] binhex - slskd

Featured Replies

Overview: Support for Docker image arch-slskd in the binhex repo.

Application: slskd - https://github.com/slskd/slskd

Docker Hub: https://hub.docker.com/r/binhex/arch-slskd/

GitHub: https://github.com/binhex/arch-slskd

Documentationhttps://github.com/binhex/documentation

 

For other Docker support threads and requests, news and Docker template support for the binhex repository please use the "General" thread here


If you appreciate my work, then please consider buying me a beer  :D

 

btn_donate_SM.gif

  • Author

I realise there is an official docker image and template, this image and template exposes additional env vars for greater control, it also gives you the ability to auto assign an incoming port from gluetun, tracks port changes and checks for internet outages (dns and https checks) via HEALTHCHECK.

having a little trouble with this getting the shares to work.....

In the install setup I set the variable Path: /media: to want to share are.... say /mnt/user/Archive/stuff/.... if I go into the console of the docker and cd /media and then ls i see my files, as I would expect.

But how do I set the actual share in the app?

There is an option called Variable: SHARED_PATHS:.... but if I put /media in that area, then the app will not connect to the webUI, it just says it can not connect... if I put /mnt/user/Archive/stuff/ in the variable, then the docker boots fine, but there are "zero" files or folders found by the app. I check this by going to system/shares in the webUI, even if you hit rescan.

I assume I am supported to use the relative docker path, as in /media.... but it is strange as when I do the docker will no longer load.... could this be as it is hashing a ton of files and the app is hung while doing this?

Any help would be appreciative.

EDIT : this seemed to resolve itself. I just left it running and tried a few hours later and it could connect. I think maybe it was that the application was lagging a ton during the hashing of the new archive or something. Anyway, seems to work now.

Edited by questionbot

  • Author
6 hours ago, questionbot said:

this seemed to resolve itself. I just left it running and tried a few hours later and it could connect. I think maybe it was that the application was lagging a ton during the hashing of the new archive or something.

slskd does take quite some time to scan shared media, and whilst this is going on the web ui is not accessible, in my opinion this is one of the weaker parts of slskd, scanning is slow, it would be nice if slskd showed a message at the very least whilst scanning is in progress so you know something is happening, but right now this is not the case.

In any case, a top tip here for next time you see inaccessible access to the web ui is to left click the container and select 'logs', you can then see what the container is doing, which should help out decide whether the inaccessible web ui is due to an error or whether (in this case) it's simply busy.

On 11/9/2025 at 11:58 AM, binhex said:

I realise there is an official docker image and template, this image and template exposes additional env vars for greater control, it also gives you the ability to auto assign an incoming port from gluetun, tracks port changes and checks for internet outages (dns and https checks) via HEALTHCHECK.

thank you so much I started using it and its amazing

Slskdlog < - Log file

I'm having really strange errors with this one and I'm not quite sure what is going on. I'm sure it's something dumb, but I've been setting up binhex docker for years and can't figure this out!

I'm getting cannot create directory 'mnt/user' and non-existent directory errors, as well as

"2025-11-12 10:07:01,290 DEBG fd 9 closed, stopped monitoring <POutputDispatcher at 22931012608288 for <Subprocess at 22931012600224 with name start-script in state RUNNING> (stdout)>

2025-11-12 10:07:01,290 DEBG fd 11 closed, stopped monitoring <POutputDispatcher at 22931012281488 for <Subprocess at 22931012600224 with name start-script in state RUNNING> (stderr)>

2025-11-12 10:07:01,291 INFO exited: start-script (exit status 0; expected)

2025-11-12 10:07:01,291 DEBG received SIGCHLD indicating a child quit"

The directories are correct, with correct permissions, I've created and re-created them several times within Unraid gui, root owner with read and write. The same parent directories are shares used with Radarr/Sonarr etc so I know that's correct. I'm attaching a masked log. I've tried so many things and it always returns with the same logs.

Edited by Roncore

  • Author
41 minutes ago, Roncore said:

Slskdlog < - Log file

I'm having really strange errors with this one and I'm not quite sure what is going on. I'm sure it's something dumb, but I've been setting up binhex docker for years and can't figure this out!

I'm getting cannot create directory 'mnt/user' and non-existent directory errors, as well as

"2025-11-12 10:07:01,290 DEBG fd 9 closed, stopped monitoring <POutputDispatcher at 22931012608288 for <Subprocess at 22931012600224 with name start-script in state RUNNING> (stdout)>

2025-11-12 10:07:01,290 DEBG fd 11 closed, stopped monitoring <POutputDispatcher at 22931012281488 for <Subprocess at 22931012600224 with name start-script in state RUNNING> (stderr)>

2025-11-12 10:07:01,291 INFO exited: start-script (exit status 0; expected)

2025-11-12 10:07:01,291 DEBG received SIGCHLD indicating a child quit"

The directories are correct, with correct permissions, I've created and re-created them several times within Unraid gui, root owner with read and write. The same parent directories are shares used with Radarr/Sonarr etc so I know that's correct. I'm attaching a masked log. I've tried so many things and it always returns with the same logs.

post a screenshot of the settings of the container (left click container select edit)

3 minutes ago, binhex said:

post a screenshot of the settings of the container (left click container select edit)

Absolutely! Thank you! I feel like I'm taking crazy pills!

Screenshot 2025-11-12 111420.png

Screenshot 2025-11-12 111430.png

Screenshot 2025-11-12 111502.jpg

  • Author

Ive spotted your issue, this is it:
{9D714C23-1250-4C56-AE28-D15E7B50727F}.png
So what's wrong with that you might ask, well the paths specified here must be container paths NOT host paths, so for example (these are examples tailor to what you want):

SHARED_PATHS = /media

INCOMPLETE_PATH = /data/incomplete
DOWNLOADS_PATH = /data/completed

1 hour ago, binhex said:

Ive spotted your issue, this is it:
{9D714C23-1250-4C56-AE28-D15E7B50727F}.png
So what's wrong with that you might ask, well the paths specified here must be container paths NOT host paths, so for example (these are examples tailor to what you want):

SHARED_PATHS = /media

INCOMPLETE_PATH = /data/incomplete
DOWNLOADS_PATH = /data/completed

Thank you so much! That did it.

  • 3 weeks later...

How do I get this working with Gluetun?

Admittedly unfamiliar with Gluetun but I set up a docker for it with port forwarding turned on and it seems to all connect on that end.

In the slskd docker, I change "GLUETUN_INCOMING_PORT" to yes and set up the GLUETUN_CONTROL_SERVER_USERNAME/PASSWORD according to what was set up in gluetun.

But then in the log for slskd, I see "Curl request to 'http://127.0.0.1:8000/v1/portforward' failed after 10 attempts" and "Curl request to 'http://127.0.0.1:8000/v1/openvpn/portforwarded' failed after 10 attempts"

If I change "GLUETUN_INCOMING_PORT" to no, then slskd launches fine, but I don't know if it's even connecting to Gluetun.

Not sure if I'm missing something in either config or if I am just misunderstanding how these are meant to work.

  • Author
20 hours ago, Slowrider8 said:

How do I get this working with Gluetun?

Admittedly unfamiliar with Gluetun but I set up a docker for it with port forwarding turned on and it seems to all connect on that end.

In the slskd docker, I change "GLUETUN_INCOMING_PORT" to yes and set up the GLUETUN_CONTROL_SERVER_USERNAME/PASSWORD according to what was set up in gluetun.

But then in the log for slskd, I see "Curl request to 'http://127.0.0.1:8000/v1/portforward' failed after 10 attempts" and "Curl request to 'http://127.0.0.1:8000/v1/openvpn/portforwarded' failed after 10 attempts"

If I change "GLUETUN_INCOMING_PORT" to no, then slskd launches fine, but I don't know if it's even connecting to Gluetun.

Not sure if I'm missing something in either config or if I am just misunderstanding how these are meant to work.

i have made some changes to the portset.sh script that is baked into the image, can you please pull down latest and try again, if no go then please copy and paste the value for env var 'HTTP_CONTROL_SERVER_AUTH_DEFAULT_ROLE' for the gluetun container and also attach the /config/supervisord.log file from the slsksd container.

Pulled, still no luck.

Also tried setting the PW on gluetun back to the default controlserver and on the slskd container, but no difference.

{"auth":"basic","username":"controlserver","password":"controlserver"}

supervisord.log

  • Author
20 minutes ago, Slowrider8 said:

Pulled, still no luck.

Also tried setting the PW on gluetun back to the default controlserver and on the slskd container, but no difference.

{"auth":"basic","username":"controlserver","password":"controlserver"}

supervisord.log

ok so what is the value for the gluetun container for port 'HTTP Control Server Port' i need the value for the container and the host, also just for a sanity check, you are of course routing slskd through the network of the gluetun container, right? (via extra parameters e.g. `--net=container:gluetun-soulseek` )

Seems like it was very much a me issue - as mentioned I'm unfamilar with how Gluetun is meant to work so didn't have it set up correctly. One spaceinvaderone video later and managed to get it working properly.

As a note, I had changed the password in HTTP_CONTROL_SERVER_AUTH_DEFAULT_ROLE in the Gluetun container again but then continued to have issues with the GLUETUN_INCOMING_PORT in the slskd container, it kept giving me "Unauthorized" errors as attached. supervisord.log

Only when I set the PW back to default in both containers did slskd fully start working.

As far as my use case is concerned this is now fine but thought I would just note the issue incase it relates to something else.

  • Author
3 hours ago, Slowrider8 said:

I had changed the password in HTTP_CONTROL_SERVER_AUTH_DEFAULT_ROLE in the Gluetun container again but then continued to have issues with the GLUETUN_INCOMING_PORT in the slskd container, it kept giving me "Unauthorized" errors as attached.

OK that is interesting, so you had the same password defined in gluetun as you did for the slskd container and you got Unauthorized shown in the log, is that correct?, i just want to ensure i got this straight so i can take a look at this.

Yep, and I managed to reproduce it using the same password as I did before (just one I randomly generated)

7P0TbF6%hQ4qd10e

Then I changed the password to simply "test" and it started working again.

Then I changed it to another password without symbols:

oTY3zKftKLYI0MXD

Same errors as before

I removed the numbers from the previous password

oTYzKftKLYIMXD

Same errors as before

Finally set it to

otyzkftklyimxd

And this actually worked.

Furthermore, switching back to "controlserver" also continued to work.

So it looks like capitals in the password is the issue, I'd guess most likely they are not being preserved in the gluetun container (I am using binhex-official-gluetun btw), or possibly not parsing through the slskd container.

I'll note that it didn't appear Gluetun had any issues launching with any password (except a few times I got an AUTH_FAILED with the vpn provider, but stopping and starting the container fixed this), only the slskd container gave the error that I posted before.

Final point, it seems that evey time I've launched, be it a successful or failed attempt, I seem to get these "invalid character" errors occassionally, but I'm not sure what the consequence of that is.

image.png

  • Author
29 minutes ago, Slowrider8 said:

So it looks like capitals in the password is the issue, I'd guess most likely they are not being preserved in the gluetun container (I am using binhex-official-gluetun btw), or possibly not parsing through the slskd container.

Thanks for doing this digging, appreciated!, i can replicate the issue and yes i agree it is case related, i think this is a bug in gluetun auth, as this has only recently been possible via env var (i put in the issue), so i will raise this with the gluetun developer, for now stick with lowercase username and password.

EDIT - Fixed the invalid character 'j' bug, was due to jq error, wrong format in the curl post command.

I'm not able to get my shares to show up.

Looking in the logs I see this:

Failed to scan share "/mnt/disk3/data/media/music/AQS Music/AQS NEW Ubers": "Could not find a part of the path '/mnt/disk3/data/media/music/AQS Music/AQS NEW Ubers'.

I've tried serveral folders and none of them are working.

Help! Please!

  • Author
10 hours ago, Southpaw32 said:

I'm not able to get my shares to show up.

Looking in the logs I see this:

Failed to scan share "/mnt/disk3/data/media/music/AQS Music/AQS NEW Ubers": "Could not find a part of the path '/mnt/disk3/data/media/music/AQS Music/AQS NEW Ubers'.

I've tried serveral folders and none of them are working.

Help! Please!

i suspect your issue is similar to this:- https://forums.unraid.net/topic/194956-support-binhex-slskd/#findComment-1590170

Thank you!

I had read that earlier, but it didn't "click" with me.

I looked it over again and finally figured it out!

Thank you for your time!

Out of curiosity, does this issue still apply with this Docker?

Are people running it in Volatile mode, on a non-ZFS or non-BTRFS disk, or just running it normally with no issue?

Your feedback is appreciated.

  • Author
1 hour ago, jademonkee said:

Out of curiosity, does this issue still apply with this Docker?

Are people running it in Volatile mode, on a non-ZFS or non-BTRFS disk, or just running it normally with no issue?

Your feedback is appreciated.

I have run this image using cache drive formatted as XFS and it seems stable enough, although indexing your shared media is EXTREMELY slow (can take 10-15 minutes) in comparison to something like nicotine+ (less than a minute). I can't really comment on whether ZFS and BTRFS cause problems, maybe somebody else will chip in.

  • 2 weeks later...

Hi there,

I'm trying to set this up, but it keeps exiting, with this in the log:

Certificate exported to /opt/slskd/slskd.pfx

158 DEBG fd 9 closed, stopped monitoring <POutputDispatcher at 23171366150432 for <Subprocess at 23171366142368 with name start-script in state RUNNING> (stdout)>

DEBG fd 11 closed, stopped monitoring <POutputDispatcher at 23171365823632 for <Subprocess at 23171366142368 with name start-script in state RUNNING> (stderr)>

INFO exited: start-script (exit status 0; expected)

DEBG received SIGCHLD indicating a child quit

It seems like the settings are now different compared to what was shared in screenshots previously. Is there anything I should be setting differently here?

image.png image.png

Let me know if there's something else I should provide in these settings that I'm not showing.

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...

Account

Navigation

Search

Search

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.