Installing on Linuxmint20

Have just found ODM, and as a former Photogrammetrist (40+ years) am very keen to learn

Just tried installing on Linuxmint20 but fell short on step2 with $ sudo pip install docker-compose

On the CMDline, see this message (in red): pyrsistent requires Python ‘>=3.5’ but the running Python is 2.7.16

How can I fix this?

Tom

2 Likes

Welcome! That’s an awesome length of time to have been working with photogrammetry. I’ve done manual photogrammetry a few times in my remote sensing class and it broke my brain, so kudos to you haha.

This may seem unhelpful at first, but what you’re experiencing is one of the main drivers behind my funding campaign listed here:

The long and short of it being your likelihood of success under anything more than 16.04LTS goes downhill quite sharply as bare-metal install.

You might want to look at the Docker images for now:
https://hub.docker.com/u/opendronemap/#!

1 Like

Thanks Saijin, I can understand your response, though I’m a little ‘hesitant’ to enter the world of ‘Snap Packages’ (at this stage…) and I’m not really in a position to assist with ‘funding’, so will take a look at other options, in the meantime.
Tom

1 Like

Tom,

I tried to figure out how to update packages and dependencies to get everything working nicely under Ubuntu 20.04LTS, but it was far too big a task for me and I gave up:

Now that Piero and Steven have merged a major update and completed ODM 2.0 (ODM 2.0 released! See what's new) you might have better luck getting that running under 20.04LTS.

I think the docker images might be your best/easiest bet at the moment, under 20.04LTS.

Hi Saijin, have ‘added’ a small pledge, hope it helps. Looking forward to using ODM :wink:
Tom

1 Like

Tom, you’ve won my “THANKYOUTHANKYOUTHANKYOU :bowing_man:‍♂” award for today.

That took us from 3% funded to 5% funded, just with your help alone.

Have you looked into the docker images? I’ve only played with them a little bit, but they’re also just updating to the newer ODM 2.0 release as of just a bit earlier today, so if you checked them out yesterday, today’s another day to do it again :rofl:

Let’s get you up and running.

1 Like

Docker is the fast and easy way for sure.

1 Like

Sorry went ‘off-Topic’, but after discussing with Saijin, tried fresh attempts on Mint20 (lmde) and Manjaro20 using their package-managers to install Docker and Docker-compose…no luck I’m afraid;
This is Mint20 result, hope it helps. Will have a try with the basic Linuxmint20 installation next.

aviceda@lmde-tom:~/WebODM$ ./webodm.sh start
Checking for docker… OK
Checking for git… 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
Default Nodes: 1

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 --scale node-odm=1
Starting node-odm …
Starting db …
Starting broker …
Starting worker … error
Starting webapp … error

ERROR: for db (‘Connection aborted.’, PermissionError(13, ‘Permission denied’))

ERROR: for node-odm (‘Connection aborted.’, PermissionError(13, ‘Permission denied’))

ERROR: for broker (‘Connection aborted.’, PermissionError(13, ‘Permission denied’))
ERROR: Couldn’t connect to Docker daemon at http+docker://localhost - 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://localhost - is it running?

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

1 Like

Tried similar with standard Linuxmint 20 (ubuntu20-based distro), curl script failed so installed docker.io, and docker-compose using package-manager, then ran WebODM script
This is result:

aviceda@tom-mint20:~$ curl -fsSL https://get.docker.com -o get-docker.sh
aviceda@tom-mint20:~$ sh get-docker.sh

Executing docker install script, commit: 26ff363bcf3b3f5a00498ac43694bf1c7d9ce16c

  • sudo -E sh -c apt-get update -qq >/dev/null
  • sudo -E sh -c DEBIAN_FRONTEND=noninteractive apt-get install -y -qq apt-transport-https ca-certificates curl >/dev/null
  • sudo -E sh -c curl -fsSL “https://download.docker.com/linux/debian/gpg” | apt-key add -qq - >/dev/null
    Warning: apt-key output should not be parsed (stdout is not a terminal)
  • sudo -E sh -c echo “deb [arch=amd64] https://download.docker.com/linux/debian bullseye stable” > /etc/apt/sources.list.d/docker.list
  • sudo -E sh -c apt-get update -qq >/dev/null
    E: The repository ‘https://download.docker.com/linux/debian bullseye Release’ does not have a Release file.
    aviceda@tom-mint20:~$ docker-compose --version
    docker-compose version 1.25.0, build unknown
    aviceda@tom-mint20:~$ git clone https://github.com/OpenDroneMap/WebODM
    Cloning into ‘WebODM’…
    remote: Enumerating objects: 14, done.
    remote: Counting objects: 100% (14/14), done.
    remote: Compressing objects: 100% (9/9), done.
    remote: Total 12067 (delta 5), reused 12 (delta 5), pack-reused 12053
    Receiving objects: 100% (12067/12067), 103.25 MiB | 2.92 MiB/s, done.
    Resolving deltas: 100% (7808/7808), done.
    aviceda@tom-mint20:~$ cd WebODM
    aviceda@tom-mint20:~/WebODM$ ./webodm.sh start
    Checking for docker… OK
    Checking for git… 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
Default Nodes: 1

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 --scale node-odm=1
ERROR: Couldn’t connect to Docker daemon at http+docker://localhost - 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://localhost - is it running?

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

Could the issue be SSL, and if so how to fix it?

1 Like

Just wondered if anyone has had the chance to look at this?