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 "$@"
打开小米电视->应用中心->高清播放器,切换到设备标签,大功告成
共有 0 条评论