Stuck starting webODM while installing it in OpenSuSE Leap 42.3


#1

Hello,
I am new on WebODM and would like to try it. I am installing it on a 64bit ASUS box (16GB RAM / 4TB HDD) over OpenSuSE Leap 42.3.
I just added the Docker and Docker-compose packages with Yast. Git and Python were there already perhaps because I have QGIS running as well.

git clone https://github.com/OpenDroneMap/WebODM --config core.autocrlf=input went with no issues and I updated pip as the system recommended.

Docker-compose from the default repo produced a version error (v1.8.1). Checking the opensuse-built service, I found a more recent version (1.17.0-3.1) on a repo dedicated for Python and that error went away after updating. Check here

The process has not been difficult but now I am stuck while running /webodm.sh start with two errors that I have no clue how to solve them. Perhaps somebody can show me the path.

Below I copied the Terminal output
Many thanks!!!
Gian Paolo

OpenSuSE:/home/user/WebODM # ./webodm.sh start
Checking for docker… OK
Checking for git… OK
Checking for python… OK
Checking for pip… OK
Checking for docker-compose… OK
Starting WebODM…

Using the following environment:

Host: localhost
Port: 8000
Media directory: appmedia
SSL: NO
SSL key:
SSL certificate:
SSL insecure port redirect: 80
Celery Broker: redis://broker

Make sure to issue a ./webodm.sh down if you decide to change the environment.

docker-compose -f docker-compose.yml -f docker-compose.nodeodm.yml start || docker-compose -f docker-compose.yml -f docker-compose.nodeodm.yml up
Starting db …
Starting node-odm-1 …
Starting broker …
Starting worker … error
Starting webapp … error

ERROR: for db (‘Connection aborted.’, error(2, ‘No such file or directory’))

ERROR: for node-odm-1 (‘Connection aborted.’, error(2, ‘No such file or directory’))

ERROR: for broker (‘Connection aborted.’, error(2, ‘No such file or directory’))
ERROR: Couldn’t connect to Docker daemon at http+docker://localunixsocket - is it running?

If it’s at a non-standard location, specify the URL with the DOCKER_HOST environment variable.
ERROR: Couldn’t connect to Docker daemon at http+docker://localunixsocket - is it running?

If it’s at a non-standard location, specify the URL with the DOCKER_HOST environment variable.


#2

Hey @gpsanino :raised_hand: welcome to the forum!

This looks like a problem with docker. Are you able to run the hello world application?

docker run hello-world


#3

exactly, that is what it looks but I have no idea how to run the daemon.
This is what I get from Terminal as user or “su” when running that command line.

docker: Cannot connect to the Docker daemon at unix:///var/run/docker.sock. Is the docker daemon running?.

Many thanks!


#4

OK I found how to enable and start Docker’s daemon.

I followed this:

To start the docker daemon during boot start YaST2, select “System” and start the module “Services Manager”. Select the “docker” service and click “Enable/Disable” and “Start/Stop”. To apply your changes click “OK”.

without restarting, I was able to run ./webODM start
I did not know if I should do this as a user or as root (su). I did is as superuser and it passed the described errors and now it is downloading lot of stuff. I will get back with the follow up.


#5

OK it just finished installing and I just went to a browser and opened: http://127.0.0.1:8000
It just works!!! I logged in as admin // admin and there I am in!
Great. Now I can try it.

I saw that the installer as well as several forums I found, are mostly directed to Ubuntu in the linux world. I could not find anything regarding webODM running on OpenSuSE. Perhaps this post helps others on the same position.

Thanks so much!


#6

That’s awesome that you got it to work!

Perhaps you could edit our README and add a note about your experience with OpenSUSE? https://github.com/OpenDroneMap/WebODM/edit/master/README.md


#7

Hi Piero, I would be more than glad to do that after testing it.
For now, the key steps to install WebODM in OpenSuSE Leap 42.3 (KDE) were:

  1. install docker-compose with using the repo for Python
  2. install with Yast (if not installer already): docker, Python and Git-core
  3. in Konsole as “su” to run:
    git clone https://github.com/OpenDroneMap/WebODM --config core.autocrlf=input
  4. a folder would be created at /home/user/WebODM/ with root privileges. Perhaps this may bring problems to access the output files later. Just to try, I opened it with Dolphin as root, and changed the folder and its content’s privileges to the “users” group and my user.
  5. also the location of the WebODM folder with the application was not of my choice, then I moved under /home/bin/ where I have other applications as well.
  6. To start the docker daemon during boot, start YaST2:
    select “System” and start the module “Services Manager”. Select the “docker” service and click “Enable/Disable” and “Start/Stop”. To apply your changes click “OK”.
  7. Using Dolphin I navigated to my WebODM folder and I have enabled a Terminal panel on dolphin to ease running commands. So there I ran: “su”, intered my root pass, and entered: ./webodm.sh start
    Many files were downloaded.
  8. To ease the steps to run WebODM a bit (to not require to remember the commands to run it), I created a subfolder “Links” and inside three symlinks:
    a- “Start Engine” as a symlink starting a Terminal as root and keeping the window opened after ending.
    b-“WebODM Access” as a symlink pointing just to the URL http://127.0.0.1:8000
    c- “Stop Engine” as a symlink starting a Terminal window as root and set to close the window when ending.
  9. To run, I just clic on "“Start Engine”, enter my root pass, then clic on “WebODM Access” opening Chrome (my default browser) on the correct URL automatically, logged in as “admin”/“admin” and there it is up and running. To close, I close Chrome and then clic on “Stop Engine”, enter my root pass.

I am aware that different linux distros may have different issues. I just found steps for Ubuntu and not related to KDE. Therefore the above described steps may help KDE users of OpenSuSE Leap and perhaps other distros but before proposing some edits to the README, I wanted try WebODM with real data. I had the chance yesterday and flew using PrecisionFlight and DroneDeploy with a Mavic Pro at 40m covering 3.5 hectares producing 304 and 107 frames respectively.
I was able to create a new project and add the tasks, one for DD and the other for PrecisionFlight files to compare their outcome. I tried to process using the default settings but I had no success. All my attempts ended with:

"Process exited with code 132"

I searched the web for this error, and found some posts where you stated this may be due to old hardware recommending 64 bits. This is weird since my box, despite not being from 2018, is based on:
Mainboard : ASUS Formula IV (64bit)
CPU: AMD Phenom II X6 cores of 3GHz
Memory: 16GB RAM, NVidia graphic board with 4GB and 16GB for Swap.
OS: OpenSuSE Leap 42.3 (x64) and KDE 5.8.7

I do not know if this error is due to my installation process, if instead I should try to install it “native” (which I have no idea how to do it) or there may be another reason for this error.
For this hardware I would have expected perhaps a slower rendering process than other hardware but not a total failure… :cold_sweat:
¿Any idea what can I look for?