samba icon indicating copy to clipboard operation
samba copied to clipboard

Samba SMB server in a Docker container.

Build Version Size Package Pulls

Docker container of Samba, an implementation of the Windows SMB networking protocol.

Usage 🐳

Via Docker Compose:

services:
  samba:
    image: dockurr/samba
    container_name: samba
    environment:
      USER: "samba"
      PASS: "secret"
    ports:
      - 445:445
    volumes:
      - /home/example:/storage

Via Docker CLI:

docker run -it --rm -p 445:445 -e "USER=samba" -e "PASS=secret" -v "/home/example:/storage" dockurr/samba

Configuration ⚙️

How do I choose the shared folder?

To change the location of the shared folder, include the following bind mount in your compose file:

volumes:
  - /home/example:/storage

Replace the example path /home/example with the desired folder.

How do I modify the credentials?

You can set the USER and PASS environment variables to modify the credentials from their default values: user samba with password secret.

environment:
  USER: "samba"
  PASS: "secret"

How do I modify the permissions?

You can set UID and GID environment variables to change the user and group ID.

environment:
  UID: "1002"
  GID: "1005"

To mark the share as read-only, add the variable RW: "false".

How do I modify other settings?

If you need more advanced features, you can completely override the default configuration by modifying the smb.conf file in this repo, and binding your custom config to the container like this:

volumes:
  - /example/smb.conf:/etc/samba/smb.conf

How do I configure multiple users?

If you want to configure multiple users, you can bind the users.conf file to the container as follows:

volumes:
  - /example/users.conf:/etc/samba/users.conf

Stars 🌟

Stars