What's the point of Octoprint as a Docker container? - eviltoast

Having ordered my first 3D printer, I am giddy and preparing various things.

I have installed Octoprint on my home server as a Docker container, but when running it, it seems that it wants to have a serial connection to a printer. Octoprint expects to be running on a Raspberry that is connected via its serial interface.

What am I missing?

The printer I ordered (Prusa Mini) comes with a wifi dongle, so I guess there will be a way to reach it over the network. But that does not automagically mean Octoprint can work with it.

  • PlutoniumAcid@lemmy.worldOP
    link
    fedilink
    English
    arrow-up
    3
    ·
    1 year ago

    I thought Octoprint can have more than 1 printer? Why do you have 3 separate containers?

    Also, let’s say I connect my printer to my server with USB, how do I route that USB connection from the server into the container? How did you map that?

    • boothin@artemis.camp
      link
      fedilink
      arrow-up
      8
      ·
      1 year ago

      Octoprint can only connect to 1 printer at a time, so if you want to use 2 printers at the same time you need 2 separate instances of octoprint. I use portainer so passing through a device is just a matter of finding the device path on the host machine and plugging its path into the portainer config under the runtime & resources tab. In a docker compose you’d use the devices key, for example

      devices:

      • /dev/ttyUSB1:/dev/ttyUSB1

      You will likely need to create a separate alias for the host USB path though because devices can be found in a different order every reboot so the path will change. The USB device alias will be based on the device vendor and product id so it will be persistent. https://michaelgreenhill.net/persistent-addressing-for-usb-devices-in-linux/ is one site that explains the issue and how to deal with it