荣耀之链论坛

 找回密码
 立即注册
搜索
查看: 560|回复: 2

docker 安装samba

[复制链接]

1374

主题

2504

帖子

1万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
10697
发表于 2023-9-15 14:42 | 显示全部楼层 |阅读模式
  1. docker pull dperson/samba
复制代码

  1. docker run --name samba_6 \
  2. -itd \
  3. -p 139:139 -p 445:445 \
  4. -v /root/docker/samba/mount:/mount \
  5. --network=docker_bridge_192_168_21 --ip=192.168.21.6 \
  6. -e TZ=Asia/Shanghai \
  7. dperson/samba -p
复制代码

这样创建好了
然后配置共享

创建用户
docker exec -it samba_6 samba.sh -u "user1;user1@123456"
docker exec -it samba_6 samba.sh -u "user2;user2@123456"
设置用户的共享目录
docker exec -it samba_6 samba.sh -s "user1;/mount/user1;yes;no;no;user1"
docker exec -it samba_6 samba.sh -s "user2;/mount/user2;yes;no;no;user2"

创建一个匿名用户可以访问的目录
docker exec -it samba_6 samba.sh -s "public;/mount/public;yes;no;yes;all"

然后重启docker让设置生效
docker restart samba_6

更多配置信息查看帮助
docker exec -it samba_6 samba.sh -h

-s参数解释
共享名;
路径;
是否可查看(填no就表示是隐藏共享);
readonly是否只读;
guest用户是否可以访问;
允许访问用户[多个用户可以用逗号隔开];
admin(估计是可以指定该文件夹的管理员,管理员可以修改文件的权限,不填默认是none);
白名单(如果上面设置了只读,这里的白名单可以设置这些用户可以写);
注释

查看samba的配置文件
docker exec -it samba_6 cat /etc/samba/smb.conf
回复

使用道具 举报

1374

主题

2504

帖子

1万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
10697
 楼主| 发表于 2025-8-3 09:36 | 显示全部楼层
  1. docker save dperson/samba:latest | gzip > /root/docker/docker-image/dperson-samba.tar.gz

  2. docker load < /root/docker/docker-image/dperson-samba.tar.gz

  3. 试试不要用139 445端口
  4. docker run --name samba_6 \
  5. -itd \
  6. -p 10039:139 -p 10045:445 \
  7. -v /root/docker/samba/mount:/mount \
  8. --network=docker_bridge_192_168_21 --ip=192.168.21.6 \
  9. -e TZ=Asia/Shanghai \
  10. dperson/samba -p

  11. iptables -I FORWARD 1 -p tcp -m multiport --dport 139,445 -j INPUT_SSH___________________ -m comment --comment "samba只允许我自己"

  12. 创建用户
  13. docker exec -it samba_6 samba.sh -u "user1;user1@123456"
  14. 设置用户的目录权限
  15. docker exec -it samba_6 samba.sh -s "user1;/mount/user1;yes;no;no;user1"
  16. 查看配置文件
  17. docker exec -it samba_6 cat /etc/samba/smb.conf
  18. 重启容器让设置生效
  19. docker restart samba_6
  20. 直接本机测试挂载试试
  21. mount -t cifs //192.168.21.6/user1 /root/samba -o username=user1,password=user1@123456

  22. 然后试试一个新用户
  23. docker exec -it samba_6 samba.sh -u "user2;user2@123456"
  24. docker exec -it samba_6 samba.sh -s "user2;/mount/user2;yes;no;no;user2"  #这里的路径必须写/mount/user2 不能用/mount
  25. mount -t cifs //192.168.21.6/user2 /root/samba2 -o username=user2,password=user2@123456 #这里的挂载路径必须指定//192.168.21.6/user2  不能用//192.168.21.6

  26. 想把暗黑的存档路径改到samba里面的,结果必须要最开始就放到sanba的路径里面,否则就不行

  27. 试试其他客户端用端口转发的形式挂载
  28. nc -zv 202.140.1.2 10045
  29. mount -t cifs //202.140.1.2/user1 /root/samba -o username=user1,password=user1@123456,port=10045
复制代码


回复 支持 反对

使用道具 举报

1374

主题

2504

帖子

1万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
10697
 楼主| 发表于 2025-8-3 10:09 | 显示全部楼层
  1. 试试巴尔之殇直接用samba的目录当存档目录 然后玩起来是否会卡
  2. docker run -it \
  3. -d \
  4. --name=BAZS_pvpgn_20 \
  5. -v /root/docker/d2/BAZS/PVPGN/etc/:/etc/pvpgn/ \
  6. -v /root/docker/d2/BAZS/PVPGN/var/:/var/pvpgn/ \
  7. --restart unless-stopped \
  8. -v /etc/localtime:/etc/localtime:ro \
  9. --network=docker_bridge_192_168_21 --ip=192.168.21.20 \
  10. -p 20020:6112 \
  11. -p 30021:30021 \
  12. -p 30022:30022 \
  13. -p 30023:30023 \
  14. -p 30024:30024 \
  15. -p 20021:6114 \
  16. pvpgn:latest

  17. docker run -it \
  18. -d \
  19. --name=BAZS_GS_22 \
  20. -v /root/samba/BAZS/SaveFile/charsave/:/root/.wine/drive_c/SaveFile/charsave/ \
  21. -v /root/docker/d2/BAZS/D2GS2/:/D2GS/ \
  22. --restart unless-stopped \
  23. -e TZ=Asia/Shanghai \
  24. --network=docker_bridge_192_168_21 --ip=192.168.21.22 \
  25. -p 4002:4000 \
  26. d2gs:latest bash


  27. docker exec -it BAZS_GS_22 wine cmd.exe
  28. regedit /s D2GS/d2gs32.reg

  29. docker exec -it BAZS_GS_22 wine /D2GS/install-D2GS.bat

  30. docker exec -d BAZS_GS_22 wine /D2GS/restart-D2GS.bat &
  31. docker exec -d BAZS_GS_22 wine /D2GS/start-D2GS.bat &


  32. docker exec -it BAZS_pvpgn_20 bnetd -f &
  33. docker exec -it BAZS_pvpgn_20 d2dbs -f &
  34. docker exec -it BAZS_pvpgn_20 d2cs -c /etc/pvpgn/d2cs2.conf -f &

  35. docker exec -it BAZS_pvpgn_20 ps
  36. docker exec -it BAZS_pvpgn_20 kill

  37. 实测确实可以
复制代码


回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

荣耀之链

GMT+8, 2025-9-10 14:08 , Processed in 0.012187 second(s), 20 queries .

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表