Docker compose environment for X1C Printers to enable liveview.
Important
REMEMBER to enable LAN Mode Liveview
on the printer
Copy example - mediamtx.yml
to mediamtx.yml
Enable TCP for WebRTC
webrtcLocalTCPAddress: :8189
Disable Docker Instance IPs
webrtcIPsFromInterfaces: no
Enable Proper IP (docker host OR public ip / dns)
webrtcAdditionalHosts: [10.0.0.456, my.dynamic.dns.com]
To enable access from internet, add your public ip or DNS OR to enable access from local lan, add the ip of the docker host.
- Download the latest version of bambu-web-X.X.X-runner.jar
bambu-web-env.txt
is the config file instead of normal.env
- Update
compose.yml
and replacebambu-web-X.X.X-runner.jar
with the correct version
Enable the following in bambu-web-env.txt
:
bambu.live-view-url=/_camerastream/
#For Each Printer:
bambu.printers.PRINTER_ID.stream.live-view=true
If you have a full custom url for the printer:
bambu.printers.PRINTER_ID.stream.url=https://my_stream_domain.com/mystream
Add to .env
:
quarkus.http.limits.max-body-size=30M
also remember to update reverse-proxy.conf
:
location / {
client_max_body_size 30m;
proxy_pass http://bambuweb;
Copy example - compose.yaml
to compose.yml
Edit compose.yml
and fix the printers (lines with FIXME)
printer1:
extends:
file: common-liveview.yml
service: liveview
depends_on:
- mediamtx
environment:
PRINTER_HOST: FIXME_this_is_my_printer_ip_or_host
PRINTER_ID: ([^1])FIXME_this_is_my_printer_id_from_env
PRINTER_ACCESS_CODE: FIXME_this_is_my_printer_access_code
Note
PRINTER_ID
is the printer id in the .env
configuration file eg:
bambu.printer.PRINTER_ID.name=My Printer Name
PORT | UDP/TCP | Purpose |
---|---|---|
8189 | TCP+UDP | Streaming for WebRTC |
8080 | TCP | HTTP for BambuWeb & WebRTC |
Start with docker compose up