From 45918b6d5768bf754f0720b0946db118a40d8dee Mon Sep 17 00:00:00 2001 From: =?utf8?q?Christopher=20Cot=C3=A9?= Date: Fri, 7 Mar 2025 13:29:00 -0500 Subject: [PATCH] update ODM to run FE on NAS and nodeodm on workstation --- README.md | 2 +- odm.docker-compose.yml | 10 ------- odm/.env | 13 +++++++++ odm/nodeodm.docker-compose.yml | 8 ++++++ odm/webodm.docker-compose.yml | 50 ++++++++++++++++++++++++++++++++++ odm/webodm.local_settings.py | 10 +++++++ 6 files changed, 82 insertions(+), 11 deletions(-) delete mode 100644 odm.docker-compose.yml create mode 100644 odm/.env create mode 100644 odm/nodeodm.docker-compose.yml create mode 100644 odm/webodm.docker-compose.yml create mode 100644 odm/webodm.local_settings.py diff --git a/README.md b/README.md index 65b29db..3acfa81 100644 --- a/README.md +++ b/README.md @@ -15,7 +15,7 @@ The primary use for this system is for a quadcopter based survey system. For running the photogrammetry you can run OpenDroneMaps using the following command ```bash -$ PROJECT_PATH=/home/entone/dev/odm_projects PROJECT=brighton-beach docker compose -f odm.docker-compose.yml up +docker compose -f odm/nodeodm.docker-compose.yml up ``` ## Targets diff --git a/odm.docker-compose.yml b/odm.docker-compose.yml deleted file mode 100644 index 6d3ce42..0000000 --- a/odm.docker-compose.yml +++ /dev/null @@ -1,10 +0,0 @@ -services: - odm: - image: opendronemap/odm:3.5.4 - command: - - "--project-path" - - "/projects" - - ${PROJECT} - volumes: - - ${PROJECT_PATH}:/projects - diff --git a/odm/.env b/odm/.env new file mode 100644 index 0000000..538955f --- /dev/null +++ b/odm/.env @@ -0,0 +1,13 @@ +WO_HOST=localhost +WO_PORT=8484 +WO_MEDIA_DIR=/volume1/docker/webodm/data +WO_SSL=NO +WO_SSL_KEY= +WO_SSL_CERT= +WO_SSL_INSECURE_PORT_REDIRECT=80 +WO_DEBUG=NO +WO_DEV=NO +WO_BROKER=redis://192.168.0.128 +WO_DEFAULT_NODES=1 +WO_SETTINGS=/volume1/docker/webodm/odm.local_settings.py +PROJECT_PATH=/home/entone/odm_projects diff --git a/odm/nodeodm.docker-compose.yml b/odm/nodeodm.docker-compose.yml new file mode 100644 index 0000000..820d3db --- /dev/null +++ b/odm/nodeodm.docker-compose.yml @@ -0,0 +1,8 @@ +services: + nodeodm: + image: opendronemap/nodeodm:3.5.5 + ports: + - "3000:3000" + volumes: + - ${PROJECT_PATH}:/var/www/data + diff --git a/odm/webodm.docker-compose.yml b/odm/webodm.docker-compose.yml new file mode 100644 index 0000000..9577f6f --- /dev/null +++ b/odm/webodm.docker-compose.yml @@ -0,0 +1,50 @@ +version: '2.1' +services: + webapp: + image: opendronemap/webodm_webapp + container_name: webapp + network_mode: bridge + entrypoint: /bin/bash -c "chmod +x /webodm/*.sh && /webodm/start.sh" + ports: + - "${WO_PORT}:8000" + depends_on: + - broker + - worker + environment: + - WO_PORT + - WO_HOST + - WO_DEBUG + - WO_BROKER + - WO_DEV + - WO_DEV_WATCH_PLUGINS + - WO_SECRET_KEY + restart: unless-stopped + oom_score_adj: 0 + volumes: + - ${WO_SETTINGS}:/webodm/webodm/settings_override.py + - ${WO_MEDIA_DIR}:/webodm/app/media:z + broker: + image: redis:7.0.10 + network_mode: bridge + container_name: broker + restart: unless-stopped + oom_score_adj: -500 + ports: + - "6379:6379" + + worker: + image: opendronemap/webodm_webapp + container_name: worker + network_mode: bridge + entrypoint: /bin/bash -c "/webodm/worker.sh start" + volumes: + - ${WO_MEDIA_DIR}:/webodm/app/media:z + - ${WO_SETTINGS}:/webodm/webodm/settings_override.py + depends_on: + - broker + environment: + - WO_BROKER + - WO_DEBUG + - WO_SECRET_KEY + restart: unless-stopped + oom_score_adj: 250 diff --git a/odm/webodm.local_settings.py b/odm/webodm.local_settings.py new file mode 100644 index 0000000..e232ad4 --- /dev/null +++ b/odm/webodm.local_settings.py @@ -0,0 +1,10 @@ +DATABASES = { + 'default': { + 'ENGINE': 'django.contrib.gis.db.backends.postgis', + 'NAME': 'webodm_dev', + 'USER': 'postgres', + 'PASSWORD': 'postgres', + 'HOST': '192.168.0.128', + 'PORT': '55432', + } +} -- 2.45.3