this post was submitted on 27 Mar 2025
14 points (93.8% liked)

Selfhosted

45341 readers
1085 users here now

A place to share alternatives to popular online services that can be self-hosted without giving up privacy or locking you into a service you don't control.

Rules:

  1. Be civil: we're here to support and learn from one another. Insults won't be tolerated. Flame wars are frowned upon.

  2. No spam posting.

  3. Posts have to be centered around self-hosting. There are other communities for discussing hardware or home computing. If it's not obvious why your post topic revolves around selfhosting, please include details to make it clear.

  4. Don't duplicate the full text of your blog or github here. Just post the link for folks to click.

  5. Submission headline should match the article title (don’t cherry-pick information from the title to fit your agenda).

  6. No trolling.

Resources:

Any issues on the community? Report it using the report flag.

Questions? DM the mods!

founded 2 years ago
MODERATORS
 

Hi, I made this post a few days ago: https://lemmy.world/post/27391713 And I've been trying a lot of stuff and it doesn't work and it's driving me nuts. Now I tried again from the bottom and wrote down everything. You can see my notes here: https://docs.google.com/document/d/1vPplJhjZ13j1A2mEzHGS1B_sPSThE3LHxnGW82_F6Is/edit?usp=sharing Can anyone tell me why I keep banging my head against a wall here? Thanks :)

Update: It worked all along. All I needed to do was restart my windows machine and the errors would go away and I could enter the share. Good times.

you are viewing a single comment's thread
view the rest of the comments
[–] [email protected] 1 points 5 days ago* (last edited 5 days ago) (1 children)

I would suggest adding "UID" and "GID" environment variables to the container, and set them to the numeric values for user and group numbers that show in place of your name when you use "ls -an" inside of the "mount" folder (they will probably be the same number).

For example, if inside your mount folder you see:

ls -an
total 12
drwx------ 2 1001 1001 4096 Mar 27 13:54 .
drwxr-xr-x 3 1000 1000 4096 Mar 27 13:51 ..
-rwx------ 1 1001 1001    0 Mar 27 13:54 hello.txt
-rwx------ 1 1001 1001    4 Mar 27 13:54 test.txt

Then set UID: 1001 and GID: 1001

I get the same error as you when I copy your docker-compose and try to access a folder owned by my user. When I add the UID and GID of my user id to the docker-compose (1001 for me), the error goes away.

[–] [email protected] 1 points 5 days ago (1 children)

Thanks for the suggestion. I tried and it still doesn't work. I updated the google docs notes with my steps if you want to see what I did.

[–] [email protected] 2 points 5 days ago* (last edited 5 days ago) (1 children)

Hmm, well it doesn't seem to be any problem with the docker compose then as best as I can tell. I picked a random ext4 flash drive and replicated your setup with the UID and GID set and it seems to work fine:

# /etc/fstab
/dev/sda1       /home/<me>/mount/ext_hdd_01  ext4    defaults 0 2
~/mount % ls -an
total 12
drwxr-xr-x  3 1000 1000 4096 Mar 27 16:22 .
drwx------ 86 1000 1000 4096 Mar 27 16:31 ..
drwxrwxrwx  3    0    0 4096 Mar 27 16:26 ext_hdd_01

~/mount/ext_hdd_01 % ls -an
total 6521728
drwxrwxrwx 3    0    0       4096 Mar 27 16:26 .
drwxr-xr-x 3 1000 1000       4096 Mar 27 16:22 ..
-rw-r--r-- 1 1000 1000 6678214224 May  5  2024 PXL_20240504_233345242.mp4
drwxrwxrwx 2    0    0      16384 May  5  2024 lost+found
-rwxr--r-- 1 1000 1000          5 Mar 27 16:27 test.txt
# ~/samba/docker-compose.yml
services:
  samba:
    image: dockurr/samba
    container_name: samba
    environment:
      NAME: "Data"
      USER: "user"
      PASS: "pass"
      UID: "1000"
      GID: "1000"
    ports:
      - 445:445
    volumes:
      - /home/<me>/mount:/storage
    restart: always

I was able to play the PXL.mp4 video from my desktop and write back the test.txt file

Have you checked the logs with docker logs -f samba to see if there's anything there?

Also you could try to access the HD from within the container, using docker exec -it samba bash and then cd into /storage and see what happens.

[–] [email protected] 1 points 5 days ago (1 children)

I'm CURSED I tells ya! I'll look at the logs tomorrow. Good to know that you can get it working. Maybe I'm close then.

[–] [email protected] 1 points 5 days ago* (last edited 5 days ago)

What displays when you run "id" as your user? You'll want it to match what your inputting in the docker compose. I may have missed it but I didn't see you identify what your personal UID and GID are in the Google doc.

As a janky fallback, what if you just added a new smb user and password and see if that one connects: sudo smbpasswd -a