使用 Docker 架設 Samba 服務
我們除了可以透過安裝 Samba service 來進行 SMB 相關服務的架設之外, 我們也可透過 Docker 來做到, 以下就請參考這邊提供的做法來試試看喔!!! PS: 要注意的是如果你的 samba 之前有安裝啟動過, 記得先停止, 不然會打架喔!!
首先我們要先撰寫一份 compose.yml 的檔案, 以便等一下使用它來啟動與創建所需要的 container,
這邊造特別注意的是, 如果你沒有使用參數 “-S”, 那麼你的 SMB 支援版本可不允許 SMB 1 的連線喔!!! 所以要特別小心!
另外下方設定資料的 “share0508” 就是你 Samba 的分享資料匣名稱, 你可隨意取用!!!
最後則是你系統內放置分享匣的位置, 這邊示範的是 “mount/share0508” 你可隨意創建並使用你喜歡的位置喔!!!
services:
samba:
image: dperson/samba
container_name: mysmb
ports:
- "139:139"
- "445:445"
command: '-p
-u "smbuser;smbuser"
-s "share0508;/mount/share0508;yes;no;no;smbuser
-S"'
以上文件建立好之後存檔離開, 再來就可以在該目錄下透過 “docker-compose up” 啟動你的 docker container, 相關指令介紹如下
# 透過 compose.yml 創建 container
docker-compose up
# or
docker-compose up -d
# -d 代表背景執行, 會看讀到系統執行的訊息狀況, 一般來說第一次執行都不加上 -d, 確定系統都沒問題後 ctrl+c
# 跳出後再透過下指令啟動 container
# 查看目前有啟動的 container 與 id
docker ps -a
# 開始 container
docker start container_id
# 停止 container
docker stop container_id
# 移除 container
docker rm container_id
啟動沒有問題之後, 你就可以透過各種方式去驗證你分享的資料匣是否可以看到並進入喔!!!
PS: 如果你的系統沒有 docker-compose, 可使用以下指令安裝
apt install docker-compose