Community Solution

Install BamBuddy on ZimaOS with Docker Compose

A ZimaOS user wanted to run BamBuddy for Bambu Lab printer management but could not find a dedicated App Store package.

BamBuddy runs on ZimaOS through Docker Compose even though it is not a built-in App Store package. Use the upstream pre-built image, persist its /app/data and /app/logs folders, and keep Linux host networking if you want automatic Bambu printer discovery.

The original thread had no solution, but BamBuddy now publishes a maintained Docker workflow. ZimaOS supports custom Compose apps, so there is no need to modify the host OS or build BamBuddy from source unless you want to develop it.

Use the Upstream Docker Image

The current BamBuddy Docker guide recommends Docker as the easiest deployment method.

Core ZimaOS Compose Settings

services:
  bambuddy:
    image: ghcr.io/maziggy/bambuddy:latest
    container_name: bambuddy
    restart: unless-stopped
    network_mode: host
    environment:
      - TZ=YOUR_TIMEZONE
      - PUID=1000
      - PGID=1000
    volumes:
      - /DATA/AppData/bambuddy/data:/app/data
      - /DATA/AppData/bambuddy/logs:/app/logs

Open http://ZIMA-IP:8000 after startup.

Why Host Networking Matters

BamBuddy uses local-network discovery for Bambu printers. Its upstream Compose uses network_mode: host on Linux because normal bridge networking does not receive the expected SSDP discovery traffic as reliably.

You Can Add the Printer Manually

If discovery does not find the printer, add it by LAN IP. Make sure the printer and ZimaOS are on networks that can reach each other and that the printer's required local/developer mode is enabled.

Persist Data Before Updating

BamBuddy stores its database, archives, and operational data under the configured data directory. Keep those paths outside the disposable container layer.

Update the Docker Deployment

docker compose pull
docker compose up -d

The upstream project has shipped security-related updates, so keep the image current and make an application backup before major changes.

Do Not Expose Port 8000 Directly to the Internet

Keep BamBuddy on the LAN or behind authenticated HTTPS/private remote access. Printer-management interfaces should not be casually port-forwarded.

The custom Docker guide provides the general custom-app model.

Verify the Container Before Adding a Printer

docker ps | grep bambuddy
docker logs --tail 100 bambuddy

Confirm the web service starts cleanly on port 8000 before troubleshooting printer discovery. If the dashboard itself does not open, printer networking is not yet the problem.

Back Up BamBuddy's Database Before Updates

The upstream project includes its own backup function. Use it before major image changes and also keep a copy of the persistent data directory. A container image can always be pulled again; your print history and local database cannot.

Host Networking Expands the Container's Network Reach

Because host mode shares the ZimaOS network namespace, review the app's ports and keep the software updated. Host mode is justified here by printer discovery, but it provides less network isolation than an ordinary bridge network.

Use a Stable Printer IP

Reserve the printer's IP in your router when possible. Even if auto-discovery works today, a stable address makes camera, MQTT, and manual reconnect troubleshooting much easier after router or printer reboots.

FAQ

Is BamBuddy in the ZimaOS App Store?

The source user could not find a dedicated package; custom Docker Compose is the straightforward route.

What port does BamBuddy use?

The default web UI is port 8000.

Why use host networking?

It enables Linux container discovery and printer-network features expected by BamBuddy.

Can I build it from source?

Yes, but the upstream project recommends the pre-built image for normal deployments.