NAS又玩出花儿了~Docker搭建一个专属音乐电台?!

2025-05-29 14:10:33 11点赞 133收藏 11评论

厌倦了千篇一律的流媒体服务?想要一个只播放你喜欢的音乐、只属于你和朋友的小众电台?那么你一定不能错过 Airstation —— 一个优雅、轻量、纯净的在线电台自托管方案。

NAS又玩出花儿了~Docker搭建一个专属音乐电台?!

本文将带你从 0 到 1,完整部署这个支持 HLS 流媒体、FFmpeg 转码、Docker 一键部署的开源神器。无论你是 NAS 玩家、家庭媒体中心爱好者,还是想玩点“音乐黑科技”的工程宅——你都能轻松拥有属于自己的网络广播站。


🔍 关于Airstation


Your own online radio station.

Airstation 是一个自托管的在线电台(流媒体音频服务) 项目,适合家庭NAS音乐播放、私人播客发布、团队内部广播、户外活动播音或远程音乐分享等多种场景,帮助你快速搭建属于自己的专属音频广播站。

  • 支持通过 Web 上传音乐

  • 提供播放队列管理和极简的听众播放界面

  • 使用 HLS (HTTP Live Streaming) 协议进行音频流传输

  • 数据存储使用 SQLite

  • 后端音频处理使用 FFmpeg

  • 支持 Docker 一键部署(提供 docker-compose.yml)

  • 可部署为私人的广播站 / 在线音乐库


📖 部署流程


本文以威联通NAS为部署演示平台,通过Docker Compose进行部署。

部署代码如下:

version: '3' # 最新版Docker Compose删除该行 services: airstation: image: cheatsnake/airstation:latest container_name: airstation ports: - "7331:7331" # 冒号左侧端口可自定义 volumes: - /share/Container/airstation/database:/app/storage # 数据库相关 - /share/Container/airstation/static:/app/static # 音乐文件等的存储位置 environment: - AIRSTATION_SECRET_KEY=ydxian666 # 控制面板登陆密码,别设置太短否则启动不成功 - AIRSTATION_JWT_SIGN=pMH51SoPKtJE6K0DQluq # 签发 JWT 会话令牌的密钥,这个自己去生成 restart: always # docker容器健康检查,我一般会选择删除该部分 healthcheck: test: ["CMD", "wget", "--spider", "-q", "http://localhost:7331/"] interval: 10s timeout: 5s retries: 3 start_period: 10s

关于文件映射目录,冒号左侧大家根据实际情况进行替换。

关于环境变量- AIRSTATION_JWT_SIGN,可以用以前介绍的工具合集 IT-TOOLS生成,也可通过openssl rand -base64 32命令来生成。

NAS又玩出花儿了~Docker搭建一个专属音乐电台?!

将代码修改完毕后,打开威联通的Docker管理工具Container Station,创建新的应用程序。将代码复制粘贴进框内,一定注意格式对齐!检查无误后进行创建,如下图所示。

NAS又玩出花儿了~Docker搭建一个专属音乐电台?!

这里也附带上 docker run 命令吧:

docker run -d --name airstation -p 7331:7331 -v /share/Container/airstation/database:/app/storage -v /share/Container/airstation/static:/app/static -e AIRSTATION_SECRET_KEY=ydxian666 -e AIRSTATION_JWT_SIGN=pMH51SoPKtJE6K0DQluq --restart=always cheatsnake/airstation:latest


🍀 使用介绍


若按上文代码部署完毕,即可浏览器打开项目。

要注意的是Airstation具备两个访问界面。

第一个是管理员专属的控制面板,浏览器输入 NAS_IP:7331/studio/,注意最后这个斜杠一定不要省略,这非常重要!!!下图可以看到我反代之后访问控制面板也是如此。

NAS又玩出花儿了~Docker搭建一个专属音乐电台?!

第二个界面就是普通的用户界面,输入NAS_IP:7331或者反代后的域名即可。

NAS又玩出花儿了~Docker搭建一个专属音乐电台?!

要想放歌,需要进入控制面板中。

面板很简单,很纯粹,截图如下。并且要注意的的是,顶部进度条有播放进度时才会生效,在第二用户界面用户才可选择播放。

NAS又玩出花儿了~Docker搭建一个专属音乐电台?!

🎧 图标表示当前在线人数,因为我要做测试,Safari和Chrome各打开一个网址,因此显示俩人。

右侧的曲库我们可以直接关联已有的曲库,也可后期点击Add添加,实际上传目录是位于/share/Container/airstation/static/track下。Delete为删除。

选中列表中的歌曲,并点击Queue即可添加到左侧的播放列表。

播放列表可以点击🎲骰子随机打乱播放顺序,点击Clera会清空播放列表,但对基础文件并无影响。

NAS又玩出花儿了~Docker搭建一个专属音乐电台?!

还有一些注意事项:

播放界面不显示歌词、歌手。第二界面默认是暂停,需要手动点击才会播放;。不支持进度条拖动,播放进度同咱们在直播平台看直播一样(暂停不能保存进度)。


👋 最后


新项目,大家可以去提提建议等参与下。

差不多就这些,感兴趣的可以自建个用用看~

感谢观看,本文完。

展开 收起
11评论

  • 精彩
  • 最新
  • 根据国家广播电视总局,广播电视管理条例:去看看
    第十条 广播电台、电视台由县、不设区的市以上人民政府广播电视行政部门设立,其中教育电视台可以由设区的市、自治州以上人民政府教育行政部门设立。其他任何单位和个人不得设立广播电台、电视台。
    第二十四条 未经批准,任何单位和个人不得擅自利用有线广播电视传输覆盖网播放节目。

    校验提示文案

    提交
    把文章看完

    校验提示文案

    提交
    他的意思是国家不准私设电台,你的回复是只能够放音乐文件。

    但是如果是放播客音频文件,那和电台也没有区别了,

    关键是,登录是否需要账号和密码,公开的话可能不行

    校验提示文案

    提交
    还有4条回复
    收起所有回复
  • 音乐放在static下,管理页面不显示

    校验提示文案

    提交
    只能识别m4a文件,可以上传,上传后会自动转换格式。

    校验提示文案

    提交
    下面还有个路径

    校验提示文案

    提交
    收起所有回复
  • 没有公网ip,这些玩法都是水中月。
    有了公网ip,大量接入也会被封。

    校验提示文案

    提交
提示信息

取消
确认
评论举报

相关文章推荐

更多精彩文章
更多精彩文章
最新文章 热门文章
133
扫一下,分享更方便,购买更轻松