Skip to content
View in the app

A better way to browse. Learn more.

Unraid

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

[Support] devzwf - Bambuddy

Featured Replies

Overview: Support for Docker image Nambuddy

Application Name: Bambuddyy
Application: https://bambuddy.cool/index.html

Documentation: https://github.com/maziggy/bambuddy

Overview : A powerful, self-hosted print archive and management system for Bambu Lab 3D printers. No cloud dependency, complete privacy, full control.

## Why Bambuddy?

- Own your data — All print history stored locally, no cloud dependency

- Works offline — Uses Developer Mode for direct printer control via local network

- Full automation — Schedule prints, auto power-off, get notified when done

- Multi-printer support — Manage your entire print farm from one interface

 

Make sure to look at the complete documentation

 

Please post any questions/issues relating to this docker template you have in this thread.

Edited by ZappyZap

  • Author

reserved

  • ZappyZap changed the title to [Support] devzwf - Bambuddy

Hi, this application seems great, but there is one problem: it does not take port allocation into account in the settings.

Actually, I set port 8001 (port 8000 is already in use):

image.png

Except that when I click on the app icon to open the webui, it opens port 8000. If I type in port 8001, nothing responds, and in the logs I have:
INFO: Application startup complete.

ERROR: [Errno 98] error while attempting to bind on address ('0.0.0.0', 8000): [errno 98] address already in use

INFO: Waiting for application shutdown.

  • Author

Let me check that , and get back to you

  • Author

i have made a change to the template and push it to git....

change the port in unraid as follow and it should be all good :

Screenshot 2026-01-22 at 9.20.44 AM.png

Edited by ZappyZap

  • Author

let me know
INFO: Application startup complete.

INFO: Uvicorn running on http://0.0.0.0:8001 (Press CTRL+C to quit)

Hey, thanks for the template. I get this, after first installing this:

2026-01-22 16:22:35,614 INFO [root] Logging to file: /app/logs/bambuddy.log
2026-01-22 16:22:35,615 INFO [root] Bambuddy starting - debug=False, log_level=INFO
INFO:     Started server process [7]
INFO:     Waiting for application startup.
2026-01-22 16:22:37,908 INFO [backend.app.services.mqtt_relay] MQTT relay disabled
2026-01-22 16:22:37,917 INFO [backend.app.services.smart_plug_manager] Smart plug scheduler started
2026-01-22 16:22:37,921 INFO [backend.app.services.print_scheduler] Print scheduler started
2026-01-22 16:22:37,929 INFO [backend.app.services.notification_service] Notification digest scheduler started
2026-01-22 16:22:37,930 INFO [backend.app.main] AMS history recording started
2026-01-22 16:22:37,930 INFO [backend.app.main] Printer runtime tracking started
INFO:     Application startup complete.
ERROR:    [Errno 98] error while attempting to bind on address ('0.0.0.0', 8000): [errno 98] address already in use
INFO:     Waiting for application shutdown.
2026-01-22 16:22:38,021 INFO [backend.app.services.print_scheduler] Print scheduler stopped
2026-01-22 16:22:38,021 INFO [backend.app.services.smart_plug_manager] Smart plug scheduler stopped
2026-01-22 16:22:38,021 INFO [backend.app.services.notification_service] Notification digest scheduler stopped
2026-01-22 16:22:38,021 INFO [backend.app.main] AMS history recording stopped
2026-01-22 16:22:38,022 INFO [backend.app.main] Printer runtime tracking stopped
INFO:     Application shutdown complete.
2026-01-22 16:22:38,023 ERROR [sqlalchemy.pool.impl.AsyncAdaptedQueuePool] Exception terminating connection <AdaptedConnection <aiosqlite.core.Connection object at 0x15193843a780>>
Traceback (most recent call last):
  File "/usr/local/lib/python3.13/site-packages/uvicorn/server.py", line 164, in startup
    server = await loop.create_server(
             ^^^^^^^^^^^^^^^^^^^^^^^^^
    ...<5 lines>...
    )
    ^
  File "/usr/local/lib/python3.13/asyncio/base_events.py", line 1630, in create_server
    raise OSError(err.errno, msg) from None
OSError: [Errno 98] error while attempting to bind on address ('0.0.0.0', 8000): [errno 98] address already in use

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/usr/local/lib/python3.13/asyncio/runners.py", line 195, in run
    return runner.run(main)
           ~~~~~~~~~~^^^^^^
  File "/usr/local/lib/python3.13/asyncio/runners.py", line 118, in run
    return self._loop.run_until_complete(task)
           ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^
  File "/usr/local/lib/python3.13/asyncio/base_events.py", line 712, in run_until_complete
    self.run_forever()
    ~~~~~~~~~~~~~~~~^^
  File "/usr/local/lib/python3.13/asyncio/base_events.py", line 683, in run_forever
    self._run_once()
    ~~~~~~~~~~~~~~^^
  File "/usr/local/lib/python3.13/asyncio/base_events.py", line 2050, in _run_once
    handle._run()
    ~~~~~~~~~~~^^
  File "/usr/local/lib/python3.13/asyncio/events.py", line 89, in _run
    self._context.run(self._callback, *self._args)
    ~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.13/site-packages/uvicorn/server.py", line 71, in serve
    await self._serve(sockets)
  File "/usr/local/lib/python3.13/site-packages/uvicorn/server.py", line 86, in _serve
    await self.startup(sockets=sockets)
  File "/usr/local/lib/python3.13/site-packages/uvicorn/server.py", line 174, in startup
    sys.exit(1)
    ~~~~~~~~^^^
SystemExit: 1

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/usr/local/lib/python3.13/site-packages/sqlalchemy/pool/base.py", line 372, in _close_connection
    self._dialect.do_terminate(connection)
    ~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^
  File "/usr/local/lib/python3.13/site-packages/sqlalchemy/engine/default.py", line 718, in do_terminate
    self.do_close(dbapi_connection)
    ~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.13/site-packages/sqlalchemy/engine/default.py", line 721, in do_close
    dbapi_connection.close()
    ~~~~~~~~~~~~~~~~~~~~~~^^
  File "/usr/local/lib/python3.13/site-packages/sqlalchemy/dialects/sqlite/aiosqlite.py", line 317, in close
    self.await_(self._connection.close())
    ~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.13/site-packages/sqlalchemy/util/_concurrency_py3k.py", line 132, in await_only
    return current.parent.switch(awaitable)  # type: ignore[no-any-return,attr-defined] # noqa: E501
           ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^
  File "/usr/local/lib/python3.13/site-packages/sqlalchemy/util/_concurrency_py3k.py", line 196, in greenlet_spawn
    value = await result
            ^^^^^^^^^^^^
  File "/usr/local/lib/python3.13/site-packages/aiosqlite/core.py", line 206, in close
    await self._execute(self._conn.close)
  File "/usr/local/lib/python3.13/site-packages/aiosqlite/core.py", line 160, in _execute
    return await future
           ^^^^^^^^^^^^
asyncio.exceptions.CancelledError
2026-01-22 16:22:38,033 ERROR [backend.app.services.notification_service] Error in digest scheduler: (sqlite3.OperationalError) no active connection
(Background on this error at: https://sqlalche.me/e/20/e3q8)

This is, because your template is set up to use the host network, and not the bridge one. The UI Port should be marked as required as well.
This is, what is working for me:

Screenshot 2026-01-22 at 16.30.43.png

Additionally it seems like, it takes for ever to restart the container. It always reports an Error on shutdown for some reason.


Screenshot 2026-01-22 at 16.34.27.png

  • Author

Your issue is because you already run something on port 8000
INFO: Application startup complete. ERROR: [Errno 98] error while attempting to bind on address ('0.0.0.0', 8000): [errno 98] address already in use INFO: Waiting for application shutdown.

I have also update the template to fix an issue with the UI port

The reason the container is set to host is not the template but the app itself seems recommend it.

https://wiki.bambuddy.cool/getting-started/docker/?h=host#network-mode-host

Thanks

Edited by ZappyZap

Really enjoying this app, thanks a ton! I haven't really wanted to use my X1C since Bambu started trying to force you to use their slicer and cloud service and this app has brought back my urge to print things.

On that note, can you make a setting to hide the printer update button so I don't accidentally press it? Need to stay on the firmware that doesn't lock it down. I do have my firewall blocking the printer from reaching the internet, but you can never be too safe...

Thanks!

  • Author
23 minutes ago, Pranker99 said:

Really enjoying this app, thanks a ton! I haven't really wanted to use my X1C since Bambu started trying to force you to use their slicer and cloud service and this app has brought back my urge to print things.

On that note, can you make a setting to hide the printer update button so I don't accidentally press it? Need to stay on the firmware that doesn't lock it down. I do have my firewall blocking the printer from reaching the internet, but you can never be too safe...

Thanks!

I feel you , i am still on 01.06.01.xx
but after all this time , realise i really do not use handy app at all so i think i will update and switch to lan mode + dev permanetly

For your request , you should add a feature request on the github

Ah I'll do just that. Thanks again.

i have made a change to the template and push it to git....

change the port in unraid as follow and it should be all good :

Screenshot 2026-01-22 at 9.20.44 AM.png

Hi, okay, it works. Well, if I click on webui, it still goes to port 8000, but at least if I manually go to port 8001, it works. Thank you!

Edited by Benji7790

  • Author
4 hours ago, Benji7790 said:

Hi, okay, it works. Well, if I click on webui, it still goes to port 8000, but at least if I manually go to port 8001, it works. Thank you!

Due the the fact this container run in host mode if you change the value here you must change it in the field WEBUI as well
this is in the description of the WebUI variable.
you must change the http://[IP]:[PORT:8000]. to http://[IP]:[PORT:<your_new_port>]

Was anyone successfull in adding and using the virtual printer feature?

I was able to setup everything according to https://wiki.bambuddy.cool/features/virtual-printer/ and it indeed connects and everything.

But when I try to send the print to this virtual printer, I get a "connection failed" error. I suspect some port issue, but didnt figure out yet what to do?

  • Author

I am not using this feature, but i will try to set it up and get back to you

Its working now.

It was my bad, I assumed I had to change the Network Type to custom, but that doesn't work.

That being said: When configuring unraid, Bambuddy needs a routing of the privileged port 990 as described in the guide:

iptables -t nat -A PREROUTING -p tcp --dport 990 -j REDIRECT --to-port 9990

iptables -t nat -A OUTPUT -o lo -p tcp --dport 990 -j REDIRECT --to-port 9990

To make it consistend even after rebooting the unraid server, these two lines have to be added to /boot/config/go

As this privileged port 990 seems to be reserved (and used in bambuddy) for FTPS, I assume that messes with any FTPS services in unraid as it now routes every incoming and outgoing traffic away from these ports to ports that bambuddy can use. I don't use FTPS in unraid, but that might be something some want to consider or at least keep in mind when setting up bambuddy.

Im still trying to get everything working, but atleast this issue is solved for now.

  • Author

Thanks to let us know

  • 2 weeks later...
On 1/23/2026 at 2:21 PM, ZappyZap said:

Due the the fact this container run in host mode if you change the value here you must change it in the field WEBUI as well
this is in the description of the WebUI variable.
you must change the http://[IP]:[PORT:8000]. to http://[IP]:[PORT:<your_new_port>]

Hey, I was encountering the same problem (webui link not updating probperly). I was looking for the setting you mentioned here but wasnt able to find it easily. Took me some time to toggle to the advanced view and change the port.

I would add to your description, that the advanced view is needed for the change. It may have been due to my limited knowledge in unraid, but it should still be helpful for newcomers to specify that.

Otherwise all is working fine, ty for the container template.

  • Author
20 minutes ago, knoeppi said:

Hey, I was encountering the same problem (webui link not updating probperly). I was looking for the setting you mentioned here but wasnt able to find it easily. Took me some time to toggle to the advanced view and change the port.

I would add to your description, that the advanced view is needed for the change. It may have been due to my limited knowledge in unraid, but it should still be helpful for newcomers to specify that.

Otherwise all is working fine, ty for the container template.

Thanks for the feedback , i will get this added

Hello @ZappyZap ,

First of all, thank you for your great work!

I have a small feature request: Would it be possible to add a new environment variable to change the internal port of the container directly to 990?

Currently, the container uses port 9990 by default and handles the port forwarding via iptables. However, since I run the container in "Custom Mode" (custom Docker network with a dedicated IP), the iptables rules do not apply there due to how the network architecture works. If I could set the port natively to 990 via a variable, the issue would be completely resolved in this mode and the container would work out-of-the-box.

It would be awesome if you could implement this when you have the chance!

Best regards

  • Author
1 hour ago, Mayo_248 said:

Hello @ZappyZap ,

First of all, thank you for your great work!

I have a small feature request: Would it be possible to add a new environment variable to change the internal port of the container directly to 990?

Currently, the container uses port 9990 by default and handles the port forwarding via iptables. However, since I run the container in "Custom Mode" (custom Docker network with a dedicated IP), the iptables rules do not apply there due to how the network architecture works. If I could set the port natively to 990 via a variable, the issue would be completely resolved in this mode and the container would work out-of-the-box.

It would be awesome if you could implement this when you have the chance!

Best regards

I will have a look, But i think this will not be possible at the template level.
This will need to be handle by the image , let me check and get back to you

Hello, since version 2.0 I no longer receive updates in Unraid. Since then, I have to manually enter the current version under Source: ghcr.io/maziggy/bambuddy:0.2.1b3, otherwise it won't update.

Hi guys,

Is there a way to define a variable in an Unraid container where I can place my print files without having to manually upload them through the web UI every time?

I’m looking for something like a consumption or watch folder. ?

  • Author

just via a variable ? short answer is NO
this would require some coding....in my opinion....

perhaps add this as a feature request in github ?

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

Account

Navigation

Search

Search

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.