仕事で、Linux上にて一時的なWindows共有のサーバーを構築してテストしたいと要望がありました。
一時的と言うこともあり、システムに直接インストールして汚す事を避けたかったため、Dockerにて構築してみた。
とは言っても、既にDocker イメージがあるので、利用するだけです
こちらのリポジトリは、比較的、更新も新しくメンテナンスもされているようです
git clone
$ git clone https://github.com/ServerContainers/samba.git
$ cd samba
試験用なので、ユーザー制限など行わず、読み書き出来るだけの環境を構築
docker-compose.yml
docker-compose.ymlのSAMBA_VOLUME_CONFIG_public
項目を編集
version: '3'
services:
samba:
build: .
image: ghcr.io/servercontainers/samba
restart: always
network_mode: host
# uncomment to solve bug: https://github.com/ServerContainers/samba/issues/50 - wsdd2 only - not needed for samba
cap_add:
- CAP_NET_ADMIN
environment:
MODEL: 'TimeCapsule'
AVAHI_NAME: SambaTest
SAMBA_CONF_LOG_LEVEL: 3
# uncomment to disable optional services
#WSDD2_DISABLE: 1
#AVAHI_DISABLE: 1
GROUP_family: 1500
SAMBA_VOLUME_CONFIG_public: "[Public]; path=/shares/public; writable =yes; guest ok = yes; guest only = yes;read only = no; browseable = yes;"
- ./shares/public:/shares/public
sudo docker-compose up -d
確認
これで、WindowsネットワークやSamba接続にて、/shares/public/
内を読み書きできることを確認