在 Ubuntu 下通过 Docker 部署 Samba 服务器

Samba 是一个开源软件套件,允许在 Linux 和 Windows 之间共享文件和打印机。它实现了 SMB/CIFS 协议,使得不同操作系统之间的互操作性变得简单高效。Docker 是一个流行的容器化平台,可以快速打包、分发和管理应用程序。通过 Docker 部署 Samba,不仅可以简化安装过程,还能保证环境的一致性,非常适合开发和测试。

一、使用到的 Docker 和 Samba 软件简介

  • Docker:Docker 是一个开源的应用容器引擎,能够将应用及其依赖打包成一个标准化的容器。容器能够在任何支持 Docker 的环境中运行,确保了跨平台的兼容性和灵活性。
  • Samba:Samba 允许 Linux 用户通过 SMB/CIFS 协议访问和共享文件,与 Windows 系统无缝集成。它被广泛应用于企业和家庭网络中,提供了文件共享及打印服务。

二、在 Ubuntu 下通过 Docker 部署 Samba 服务器的步骤

步骤 1:安装 Docker

首先,确保你的 Ubuntu 系统已安装 Docker。如果没有,可以使用以下命令进行安装:

复制代码
sudo apt update
sudo apt install docker.io

安装完成后,启动 Docker 并设置为开机自启:

复制代码
sudo systemctl start docker
sudo systemctl enable docker

步骤 2:拉取 Samba 镜像

接下来,拉取 Samba 的 Docker 镜像:

复制代码
sudo docker pull dperson/samba

步骤 3:创建共享目录

创建一个目录用于存放共享文件:

复制代码
mkdir -p /srv/samba/share

步骤 4:运行 Samba 容器

运行 Samba 容器并配置共享:

复制代码
sudo docker run -d \
  -p 137:137 -p 138:138 -p 139:139 -p 445:445 \
  -v /srv/samba/share:/mount \
  -e SAMBA_USER=your_username \
  -e SAMBA_PASS=your_password \
  --name samba-server \
  dperson/samba -u "your_username;your_password" -s "share;/mount;yes;no;yes;all"

参数解释

  • -d:后台运行容器。
  • -p:映射主机端口到容器端口,确保 Samba 的协议端口能够被访问。
  • -v:将主机目录挂载到容器内,便于访问共享文件。
  • -e:设置环境变量,配置 Samba 用户及密码。
  • --name:指定容器名称。
  • -s:定义共享的配置,包括名称、路径、访问权限等。

步骤 5:访问 Samba 共享

在 Windows 或其他 Linux 系统中,可以通过以下路径访问 Samba 共享:

复制代码
\\<your_server_ip>\share

输入用户名和密码即可访问共享文件夹。

小结

通过以上步骤,你已经成功在 Ubuntu 上通过 Docker 部署了 Samba 服务器。现在可以轻松实现跨平台的文件共享了。记得根据实际需求调整用户和共享配置,玩得开心!

相关推荐
christine-rr2 天前
linux常用命令(4)——压缩命令
linux·服务器·redis
muyun28002 天前
Docker 下部署 Elasticsearch 8 并集成 Kibana 和 IK 分词器
elasticsearch·docker·容器
東雪蓮☆2 天前
深入理解 LVS-DR 模式与 Keepalived 高可用集群
linux·运维·服务器·lvs
乌萨奇也要立志学C++2 天前
【Linux】进程概念(二):进程查看与 fork 初探
linux·运维·服务器
绿箭柠檬茶2 天前
Ubuntu 服务器配置转发网络访问
服务器·网络·ubuntu
风_峰2 天前
Ubuntu Linux SD卡分区操作
嵌入式硬件·ubuntu·fpga开发
獭.獭.2 天前
Linux -- 信号【上】
linux·运维·服务器
路由侠内网穿透2 天前
本地部署 GPS 跟踪系统 Traccar 并实现外部访问
运维·服务器·网络·windows·tcp/ip
傻傻虎虎2 天前
【Docker】常用帮忙、镜像、容器、其他命令合集(2)
运维·docker·容器
ZERO_pan2 天前
服务器装机遇到的问题
运维·服务器