欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

docker如何搭建samba共享目錄

 更新時(shí)間:2025年03月08日 14:18:26   作者:北極的企鵝88  
文章介紹了如何使用Docker搭建一個(gè)Samba共享文件系統(tǒng),首先安裝了Docker容器,然后下載并拉取了Samba鏡像,在本地創(chuàng)建了一個(gè)目錄用于掛載,啟動(dòng)容器并添加了SMB用戶名和密碼,驗(yàn)證掛載成功,最后總結(jié)了主要參數(shù)

需求

  • 因項(xiàng)目需要共享文件夾來傳輸數(shù)據(jù)。
  • 正好接觸docker,所以想用docker來搭建samba共享文件
  • 系統(tǒng):Centos7.6

1、安裝docker容器

1.1 首先下載docker rpm包

container-selinux-2.107-1.el7_6.noarch.rpm
containerd.io-1.2.6-3.3.el7.x86_64.rpm
docker-ce-cli-19.03.8-3.el7.x86_64.rpm
docker-ce-19.03.8-3.el7.x86_64.rpm

1.2 安裝docker

將上面四個(gè)rpm包放入服務(wù)器中,分別執(zhí)行下面命令
sudo rpm -ivh container-selinux-2.107-1.el7_6.noarch.rpm   
sudo rpm -ivh containerd.io-1.2.6-3.3.el7.x86_64.rpm
sudo rpm -ivh docker-ce-cli-19.03.8-3.el7.x86_64.rpm
sudo rpm -ivh docker-ce-19.03.8-3.el7.x86_64.rpm
// 設(shè)置開機(jī)自啟
sudo systemctl enable docker
//啟動(dòng)docker容器
sudo systemctl start docker

1.3 驗(yàn)證是否安裝成功

sudo systemctl status docker
//  應(yīng)返回running狀態(tài):
● docker.service - Docker Application Container Engine
   Loaded: loaded (/usr/lib/systemd/system/docker.service; enabled; vendor preset: disabled)
   Active: active (running) since Sun 2020-06-28 12:43:59 CST; 18s ago
     Docs: https://docs.docker.com
 Main PID: 30655 (dockerd)
    Tasks: 29
   Memory: 51.6M
   CGroup: /system.slice/docker.service
           └─30655 /usr/bin/dockerd -H fd:// --containerd=/run/containerd/con...
或者
sudo docker ps
應(yīng)當(dāng)返回一個(gè)空的列表
CONTAINER ID        IMAGE               COMMAND             CREATED             STATUS              PORTS               NAMES

2、下載samba鏡像

2.1 首先在服務(wù)器中查找docker版的samba

// 查找使用最多的samba容器鏡像
sudo docker search samba

2.2 pull samba 容器鏡像

sudo docker pull dperson/samba 

3、在本地創(chuàng)建個(gè)目錄,以便于容器掛載

mkdir /hdddata/shared            //在/home目錄下創(chuàng)建shared目錄
chmod 777 /hdddata/shared		 //修改shared權(quán)限,不修改的話連接進(jìn)去會(huì)提示沒有權(quán)限寫入數(shù)據(jù)

4、啟動(dòng)鏡像

docker run -it --name samba -p 139:139 -p 445:445 -v /hdddata/shared:/mount -d dperson/samba -u "centos;1qaz@WSX" -s "shared;/mount;yes;no;no;all;none"

"shared;/mount;yes;no;no;all;none" 參數(shù)說明:

分別是:

  • shared:共享文件夾的名稱(shared);
  • /mount:共享在samba容器中的路徑(/mount);
  • yes:共享名稱對(duì)所有工作組用戶可見;
  • no:不是只讀(也就是說可寫);
  • no:不允許guest用戶;
  • all:指定共享的所有權(quán)用戶;
  • none:指定共享的超級(jí)用戶;
  • 指定具有寫權(quán)限的用戶;

5、啟動(dòng)鏡像進(jìn)入容器內(nèi)部,添加smb用戶名和密碼

進(jìn)入容器內(nèi)部
sudo docker exec -it 容器ID /bin/bash
添加smb用戶名和密碼
運(yùn)行sudo smbpasswd -a centos命令添加用戶,并設(shè)置密碼為1qaz@WSX 

6、驗(yàn)證掛載

sudo mount -t cifs -o rw,vers=2.0,dir_mode=0777,file_mode=0666,username=centos,password=1qaz@WSX,iocharset=utf8 //114.325.5.23/shared/ /hdddata/sharedEmpty

參數(shù)說明:

  • centos:用戶名            
  • 1qaz@WSX:密碼                
  • 114.325.5.23:改成部署samba容器的ip
  • shared: 不變,需要掛載的名稱,即步驟4的共享文件夾的名稱,并不是路徑(shared);

7、Github主要參數(shù)說明

以下是Github參數(shù)介紹:
sudo docker run -it --rm dperson/samba -h
Usage: samba.sh [-opt] [command]
Options (fields in '[]' are optional, '<>' are required):
    -h          This help
    -c "<from:to>" setup character mapping for file/directory names
                required arg: "<from:to>" character mappings separated by ','
    -G "<section;parameter>" Provide generic section option for smb.conf
                required arg: "<section>" - IE: "share"
                required arg: "<parameter>" - IE: "log level = 2"
    -g "<parameter>" Provide global option for smb.conf
                required arg: "<parameter>" - IE: "log level = 2"
    -i "<path>" Import smbpassword
                required arg: "<path>" - full file path in container
    -n          Start the 'nmbd' daemon to advertise the shares
    -p          Set ownership and permissions on the shares
    -r          Disable recycle bin for shares
    -S          Disable SMB2 minimum version
    -s "<name;/path>[;browse;readonly;guest;users;admins;writelist;comment]"
                Configure a share
                required arg: "<name>;</path>"
                <name> is how it's called for clients
                <path> path to share
                NOTE: for the default values, just leave blank
                [browsable] default:'yes' or 'no'
                [readonly] default:'yes' or 'no'
                [guest] allowed default:'yes' or 'no'
                NOTE: for user lists below, usernames are separated by ','
                [users] allowed default:'all' or list of allowed users
                [admins] allowed default:'none' or list of admin users
                [writelist] list of users that can write to a RO share
                [comment] description of share
    -u "<username;password>[;ID;group;GID]"       Add a user
                required arg: "<username>;<passwd>"
                <username> for user
                <password> for user
                [ID] for user
                [group] for user
                [GID] for group
    -w "<workgroup>"       Configure the workgroup (domain) samba should use
                required arg: "<workgroup>"
                <workgroup> for samba
    -W          Allow access wide symbolic links
    -I          Add an include option at the end of the smb.conf
                required arg: "<include file path>"
                <include file path> in the container, e.g. a bind mount

例子:Start an instance creating users and shares:
sudo docker run -it -p 139:139 -p 445:445 -d dperson/samba -p \
            -u "example1;badpass" \
            -u "example2;badpass" \
            -s "public;/share" \
            -s "users;/srv;no;no;no;example1,example2" \
            -s "example1 private share;/example1;no;no;no;example1" \
            -s "example2 private share;/example2;no;no;no;example2"

總結(jié)

以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • Docker 端口映射詳細(xì)介紹

    Docker 端口映射詳細(xì)介紹

    這篇文章主要介紹了Docker 端口映射詳細(xì)介紹的相關(guān)資料,需要的朋友可以參考下
    2016-10-10
  • docker實(shí)現(xiàn)導(dǎo)出、導(dǎo)入和數(shù)據(jù)搬遷

    docker實(shí)現(xiàn)導(dǎo)出、導(dǎo)入和數(shù)據(jù)搬遷

    本篇文章主要介紹了docker實(shí)現(xiàn)導(dǎo)出、導(dǎo)入和數(shù)據(jù)搬遷,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧
    2017-07-07
  • docker拉取烏班圖并且ssh連接方式

    docker拉取烏班圖并且ssh連接方式

    文章介紹了如何在Docker中拉取Ubuntu鏡像并使用SSH連接到容器,首先,確保容器正在運(yùn)行,然后使用`docker exec`進(jìn)入容器,接著,安裝并配置OpenSSH服務(wù)器,設(shè)置root密碼,并配置SSH允許root登錄,最后,映射端口以便從宿主機(jī)連接到容器的SSH服務(wù)
    2025-03-03
  • Docker+K8S 集群環(huán)境搭建及分布式應(yīng)用部署

    Docker+K8S 集群環(huán)境搭建及分布式應(yīng)用部署

    這篇文章主要介紹了Docker+K8S 集群環(huán)境搭建及分布式應(yīng)用部署,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-07-07
  • Docker安裝MongoDB并使用Navicat連接的操作方法

    Docker安裝MongoDB并使用Navicat連接的操作方法

    MongoDB是一個(gè)基于分布式文件存儲(chǔ)的數(shù)據(jù)庫(kù),MongoDB最大的特點(diǎn)是它支持的查詢語(yǔ)言非常強(qiáng)大,其語(yǔ)法有點(diǎn)類似于面向?qū)ο蟮牟樵冋Z(yǔ)言,幾乎可以實(shí)現(xiàn)類似關(guān)系數(shù)據(jù)庫(kù)單表查詢的絕大部分功能,這篇文章主要介紹了Docker安裝MongoDB并使用Navicat連接,需要的朋友可以參考下
    2022-10-10
  • 一文快速入門Docker推薦

    一文快速入門Docker推薦

    這篇文章主要介紹了一文快速入門Docker推薦,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-06-06
  • Docker下安裝zookeeper(單機(jī)和集群)

    Docker下安裝zookeeper(單機(jī)和集群)

    這篇文章主要介紹了Docker下安裝zookeeper(單機(jī)和集群),文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-07-07
  • 查看Docker停止容器占用的內(nèi)存的實(shí)現(xiàn)方法小結(jié)

    查看Docker停止容器占用的內(nèi)存的實(shí)現(xiàn)方法小結(jié)

    要查看 Docker 停止的容器占用的內(nèi)存,可以通過以下幾種方法來實(shí)現(xiàn),Docker 提供了一些命令和工具來幫助你管理和監(jiān)控容器的資源使用情況,需要的朋友可以參考下
    2024-11-11
  • docker配置阿里云鏡像倉(cāng)庫(kù)的實(shí)現(xiàn)

    docker配置阿里云鏡像倉(cāng)庫(kù)的實(shí)現(xiàn)

    本文主要介紹了docker配置阿里云鏡像倉(cāng)庫(kù)的實(shí)現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2022-08-08
  • docker獲取Let''s Encrypt永久免費(fèi)SSL證書的方法

    docker獲取Let''s Encrypt永久免費(fèi)SSL證書的方法

    在本篇文章里小編給大家分享了一篇關(guān)于docker獲取Let's Encrypt永久免費(fèi)SSL證書的方法,以后需要的朋友們可以參考下。
    2021-01-01

最新評(píng)論