Remote Processing

Hi All,

I’m new to Docker and WebODM and only medium proficient with Linux. I have managed to install WebODM with Docker on my iMac and process a couple of image sets.

Now I want to install a processing node on a powerful Windows 10 Gaming PC that sits idle most of the week. So… how do I do that? Do I just follow the instructions for a stand-alone docker install ? Or is there something different to do if all I want is a processing node…? (I want to administer everything from my WebODM on my iMac but have the Windows machine handle the processing.). Not sure where to get started on this. Is there a doc that you could point me to that addresses this kind of scenario?


1 Like

Hey @Tenly2000 :hand: basically you’re looking to run a nodeodm container on your Windows machine:

docker run -d -p 3000:3000 opendronemap/nodeodm

Then you can reference that to your installation of WebODM by adding a new processing node. also has a chapter that has details on how to spin up new nodeodm nodes.

Thank you for the link. I’ll try this tomorrow!

Okay - with a little effort I managed to get Docker and NodeODM installed on the Windows 10 machine and port 3000 opened in the firewall… I was also able to add it as an extra node inside WebODM running on the iMac and start a job using that node.

From the WebODM perspective, it seems to be running properly, however, if I go to NodeODM in a separate web browser, I just get the main screen asking for a project name and allowing me to upload images - and there is a message near the bottom which says “No running tasks”. Is that normal?

I guess I also have a question about the Docker-Desktop configuration. The Windows 10 PC is an 8-core (no hyperthreading) i7-9700K with 32GB of fast RAM and a 1TB SSD. It also has a 7200 rpm Toshiba 4TB “gaming hard drive” and Intel Optane.

When configuring Docker, I’ve currently allocated 7 CPU’s and 24 GB of memory. My question is - does Docker grab those resources exclusively? Or only when needed? If NodeODM is not processing a task, are all of those resources still available to Windows 10? If so - should I assign all 8 CPU cores? All 32GB of the RAM? Or do I need to reserve a bit for Windows 10?

Finally, the machine also has a very high end Nvidia Graphics card. Is there any way for NodeODM to also use the graphics card processing power and memory to speed up its processing? (like they do in bitcoin mining?)

(My son is only with me on Saturdays - and needs all of the resources of that PC when he’s here - but the rest of the week, the PC is completely unused so I thought it would be perfect to use as a processing node.)

I know this is an old thread but it has the information I want so I figure I’d try to answer some of the questions left behind. In case it’s helpful for someone else.

You can configure all that (CPU’s, RAM, disk settings) from inside the Oracle VM VirtualBox Manager (Virtualbox.exe).

I don’t think that ODM uses the graphics card for anything but possibly in the future. Image Processing using GPU · Issue #92 · OpenDroneMap/ODM · GitHub