I use OpenSCAD to have a declarative method to 'design' boxes for my electronic projects. So boxes and lids with hinges and stuff.
When I need something with accurate measurements but a more complex design, FreeCad is the go-to tool. Sprockets, PS5 controller loading-station, bolts and nuts.
Blender probably can be used too, but I have never used it.
If the printer runs a Marlin variation as firmware (Ender probably does), you can run octoprint on a Raspberry pi or more powerful stuff. Running in docker should be doable, you just need to route the serial-usb connection into the container running ocotoprint. Klipper user with Mainsail on a RPI4 here, no experience with a dockerized octoprint.
The most slicers have some calibration prints to tune flow/temperature etc. Do them before starting that 9 hour print job..
Designing stuff: FreeCad and OpenSCAD. Lots of YouTube material for educational purposes.
Regarding the printer, this depends on the make/model/manufacturer, but the more serious people (not starting a flame war here, just my observation) tend to use Klipper.
Most printers run some form of Marlin, but most can run Klipper as an alternative firmware.
And there are the slicers.... A huge amount of choice here, but one way or the other, most are forks/spinoffs of previous work. Personal choice here is SuperSlicer, mostly due to its interface and me being too lazy to use OrcaSlicer of one of the other options.
But beware: tuning, measuring adjusting will take a lot of time. And the entire 3d printing community likes is.
The only use for RPI is kodi and Mainsail for the printer. All of them boot from NFS, so no storage issues. Everything else is x86-64 or docker containers on those Intel/amd machines.
In run a personal instance of forgejo, love it.
Everything I want regarding version control and workers. And more lightweight on the frontend side.
https://forgejo.org/