docker搭建samba供小米电视访问

最近在小米电视上看电影,绝大部分电影需要会员,因为我长期是京东PLUS+爱奇艺联名会员,所以一般会用爱奇艺投屏,但是有些电影在爱奇艺上也找不到,甚至有些不支持投屏,那没办法,我只能通过电脑下载下来看了,毕竟电脑投屏的效果太差,画质、声音都是对我这65英寸4k超清屏幕的不尊重。

一开始按照常我以往的方式,使用dperson/samba镜像启动了docker,但是电视上始终显示连接失败,华为手机文件管理上也是,于是想起之前配置摄像头远程存储事遇到过的镜像servercontainers/samba,终于配置成功了,华为手机上也能正常连接。

编排文件docker-compose.yml

version: '2'

services:
  main:
    hostname: samba-tv
    container_name: samba-tv
    image: servercontainers/samba
    restart: always
    environment:
      ACCOUNT_tv: ********
      SAMBA_VOLUME_CONFIG_tv: "[TV Share]; path=/shares/tv; valid users = tv; guest ok = no; read only = no; browseable = yes; veto files = /._*/.apdisk/.AppleDouble/.DS_Store/.TemporaryItems/.Trashes/desktop.ini/ehthumbs.db/Network Trash Folder/Temporary Items/Thumbs.db/; delete veto files = yes"
    volumes:
      - ./shares:/shares
    ports:
      - "137:137/udp"
      - "138:138/udp"
      - "139:139/udp"
      - "139:139/tcp"
      - "445:445/tcp"
    networks:
      tv_net:
        ipv4_address: 192.168.1.88

networks:
  tv_net:
    driver: macvlan
    driver_opts:
      parent: enp4s0
    ipam:
      config:
        - subnet: 192.168.1.0/24
          gateway: 192.168.1.1

要注意的是,最好手动创建好./shares/tv目录然后修改权限,
chown -R 1000:1001 ./shares/tv

这个镜像默认是不启动nmbd服务的,nmbd可以让当前samba服务被发现,
我是为了启用nmbd服务才创建vlan让这个容器独自占用一个IP
有了独立IP后,找到作者的Github项目,将代码克隆下来,
修改scripts/entrypoint.sh文件在末尾处加了一行代码

echo ">> Start nmbd service..."
nmbd -D

然后重新构建镜像。

修改后的scripts/entrypoint.sh文件末尾:

...
##
# CMD
##
echo ">> Start nmbd service..."
nmbd -D
echo ">> CMD: exec docker CMD"
echo "$@"
exec "$@"

打开小米电视->应用中心->高清播放器,切换到设备标签,大功告成
WechatIMG1

参考链接:
Github仓库
nmbd使用

版权声明:
作者:ht
链接:https://www.techfm.club/p/1044.html
来源:TechFM
文章版权归作者所有,未经允许请勿转载。

THE END
分享
二维码
< <上一篇
下一篇>>