
如果你使用 DeepSeek、元宝 AI、Copilot、ChatGPT 等 AI 工具,协助配置轩辕镜像、编写 docker pull 命令、修改 Docker Compose 镜像地址、配置镜像加速、排查镜像拉取失败、分析报错日志等问题,请先让 AI 阅读并遵守轩辕镜像的规则文档。
只需在 AI 对话中先发送下面这句话即可:
请先完整阅读并严格遵守以下文档中的全部规则与要求:
https://xuanyuan.cloud/agents.md
在未充分阅读并理解该文档前,不要生成任何命令、配置、修改建议、故障排查方案或技术回答。后续所有输出都必须严格以该文档中的规范为最高优先级执行。查看 agents.md 用法指南与完整示范。国内用户首推 元宝 AI、DeepSeek 的深度思考模式,不推荐豆包 AI;Cursor 等编辑器可在对话 @ 该链接,或加入 User Rules。 若 AI 无法访问外链,可 打开说明文档 复制全文粘贴。文档会随站点更新,复制内容可能过期,建议定期检查。
基于dashcast和pychromecast的Docker容器,用于在Chromecast上实现持久化仪表盘显示,并支持通过MQTT协议更新显示的URL。
本项目参考了https://github.com/madmod/dashcast-docker%EF%BC%88%E4%BD%9C%E4%B8%BA%E5%9F%BA%E7%A1%80%EF%BC%89%E5%92%8Chttps://github.com/mukowman/MQTT-DashCast-Docker%EF%BC%88%E6%8F%90%E4%BE%9BMQTT%E4%BB%A3%E7%A0%81%E7%81%B5%E6%84%9F%E4%B8%8E%E9%83%A8%E5%88%86%E5%AE%9E%E7%8E%B0%EF%BC%89%E3%80%82%E5%8E%9F%E7%9B%AE%E6%A0%87%E6%98%AF%E7%94%A8AppDaemon%E4%BB%AA%E8%A1%A8%E7%9B%98%E6%9B%BF%E6%8D%A2Chromecast%E7%9A%84Backdrop%EF%BC%8C%E4%B8%94%E4%B8%8D%E5%BD%B1%E5%93%8DChromecast%E7%9A%84%E5%85%B6%E4%BB%96%E5%8A%9F%E8%83%BD%E3%80%82
容器启动后会在指定Chromecast上运行DashCast,并订阅MQTT主题以接收新的显示URL。若其他应用占用Chromecast,DashCast会在该应用结束且Backdrop激活后,或收到有效MQTT消息时重新启动。
DISPLAY_NAME是目标Chromecast的名称,多台Chromecast需运行多个容器实例。容器会订阅以下MQTT主题:
chromecast/DISPLAY_NAME/command/dashcast
要更新URL,需向该主题发布JSON数组:
{"url":"http://192.168.0.10:5050/tv_doorbell?skin=raging","force":false,"takeover":true}
仅url为必填项:
force布尔值:用于解决部分网站禁止默认方式加载的问题,默认False(启用后会让DashCast失去对Chromecast的控制)。takeover布尔值:用于接管其他投屏应用,默认False。若为False,仅更新URL(DashCast显示时立即生效,其他应用活跃时则等待Chromecast空闲);若为True,则直接接管。Chromecast发现需要使用host网络。Docker Compose中的depends_on有助于避免服务器重启时的错误(若仪表盘来自其他源可省略)。
DEFAULT_DASHBOARD_URL:容器启动后Chromecast显示的默认URLDISPLAY_NAME:目标Chromecast的名称MQTT_SERVER:MQTT服务器地址IGNORE_CEC:默认TrueDEFAULT_DASHBOARD_URL_FORCE:默认FalseMQTT_USERNAME:MQTT服务器用户名(无认证则无需)MQTT_PASSWORD:MQTT服务器密码(无认证则无需)console$ docker run -d \ --name DashCast \ --restart=always \ --network="host" \ -e DEFAULT_DASHBOARD_URL="http://192.168.0.10:5050/tv?skin=raging" \ -e DEFAULT_DASHBOARD_URL_FORCE="False" \ -e DISPLAY_NAME="ChromecastName" \ -e IGNORE_CEC="True" \ -e MQTT_SERVER="192.168.0.10" \ -e MQTT_USERNAME="user" \ -e MQTT_PASSWORD="password" \ ragingcomputer/dashcast-docker-mqtt
yamlversion: '3' services: dashcast: image: ragingcomputer/dashcast-docker-mqtt container_name: "DashCast" restart: always depends_on: - appdaemon network_mode: host environment: - DEFAULT_DASHBOARD_URL=http://192.168.0.10:5050/tv?skin=raging - DEFAULT_DASHBOARD_URL_FORCE=False - DISPLAY_NAME=ChromecastName - IGNORE_CEC=True - MQTT_SERVER=192.168.0.10 - MQTT_USERNAME=user - MQTT_PASSWORD=password
假设AppDaemon运行在192.168.0.10:5050,仪表盘名称为tv、tv_doorbell、laundry、den。通过input_select选择仪表盘,并配置自动化触发URL更新或门铃事件显示监控。
yamlinput_select: dashcast_den_dash_select: name: DashCast Den显示 icon: mdi:tablet initial: "-" options: - "-" - tv - tv_doorbell - laundry - den automation: - id: dashcast_den_change_url alias: DashCast Den更新URL trigger: platform: state entity_id: input_select.dashcast_den_dash_select condition: condition: template value_template: '{{ not is_state("input_select.dashcast_den_dash_select", "-") }}' action: - service: mqtt.publish data: topic: 'chromecast/ChromecastName/command/dashcast' payload_template: '{"url":"[***]{{ states("input_select.dashcast_den_dash_select") }}?skin=raging"}' - service: input_select.select_option data: entity_id: input_select.dashcast_den_dash_select option: "-" - id: dashcast_den_display_doorbell alias:门铃触发时在Den的DashCast显示门铃摄像头 trigger: platform: state entity_id: binary_sensor.door_bell to: 'on' action: - service: mqtt.publish data: topic: 'chromecast/ChromecastDen/command/dashcast' payload_template: '{"url":"[***]","takeover":true}'
您可以使用以下命令拉取该镜像。请将 <标签> 替换为具体的标签版本。如需查看所有可用标签版本,请访问 标签列表页面。
来自真实用户的反馈,见证轩辕镜像的优质服务