Merge pull request #208 from smathermather/add_building

add howto on image builds
pull/210/head
Piero Toffanin 2023-11-08 22:40:27 -05:00 zatwierdzone przez GitHub
commit 5cf8e65e56
Nie znaleziono w bazie danych klucza dla tego podpisu
ID klucza GPG: 4AEE18F83AFDEB23
1 zmienionych plików z 45 dodań i 0 usunięć

Wyświetl plik

@ -30,6 +30,51 @@ Linux users can connect to 127.0.0.1.
If the computer running NodeODM is using an old or 32bit CPU, you need to compile OpenDroneMap from sources and setup NodeODM natively. You cannot use docker. Docker images work with CPUs with 64-bit extensions, MMX, SSE, SSE2, SSE3 and SSSE3 instruction set support or higher. Seeing a `Illegal instruction` error while processing images is an indication that your CPU is too old.
### Building docker image
If you need to test changes as a docker image, you can build easily as follows:
```
docker build -t my_nodeodm_image --no-cache .
```
Run as follows:
```
docker run -p 3000:3000 my_nodeodm_image &
```
### Testing alternative ODM images through NodeODM
In order to test alternative ODM docker images in NodeODM, you will need to change the dockerfile for NodeODM to point to your ODM image. For example if you built an alternate ODM image as follows:
```
docker build -t my_odm_image --no-cache .
```
Then modify NodeODM's Dockerfile to point to the new ODM image in the first line:
```
FROM my_odm_image
MAINTAINER Piero Toffanin <pt@masseranolabs.com>
EXPOSE 3000
...
```
Then build the NodeODM image:
```
docker build -t my_nodeodm_image --no-cache .
```
Finally run as follows:
```
docker run -p 3000:3000 my_nodeodm_image &
```
### Running rootless
* A rootless alternative to Docker is using [Apptainer](https://apptainer.org/). In order to run NodeODM together with ClusterODM in rootless environments, for example on HPC, we need a rootless alternative to Docker, and that's where Apptainer comes in to play. From the Linux command line, cd into the NodeODM folder and run the following commands to host a NodeODM instance: