diff --git a/Dockerfile.gpu.intel b/Dockerfile.gpu.intel index 44f4b53..61b78fd 100644 --- a/Dockerfile.gpu.intel +++ b/Dockerfile.gpu.intel @@ -29,6 +29,5 @@ RUN usermod -aG video,users odm RUN usermod -aG video,users,odm root WORKDIR /var/www -USER odm -ENTRYPOINT ["/usr/bin/node", "/var/www/index.js"] +ENTRYPOINT ["/var/www/run_gpu_intel.sh"] diff --git a/Dockerfile.gpu.intel.local b/Dockerfile.gpu.intel.local deleted file mode 100644 index a4c27c5..0000000 --- a/Dockerfile.gpu.intel.local +++ /dev/null @@ -1,14 +0,0 @@ -FROM opendronemap/nodeodm:gpu.intel - -EXPOSE 3000 - -ARG RENDER_GROUP_ID=0 - -USER root - -RUN if [ "${RENDER_GROUP_ID}" -ne 0 ]; then groupadd -g "${RENDER_GROUP_ID}" render; usermod -aG render odm; fi - -WORKDIR /var/www -USER odm - -ENTRYPOINT ["/usr/bin/node", "/var/www/index.js"] diff --git a/run_gpu_intel.sh b/run_gpu_intel.sh new file mode 100755 index 0000000..9a2552c --- /dev/null +++ b/run_gpu_intel.sh @@ -0,0 +1,15 @@ +#!/usr/bin/env bash + +if [ ! -z "${RENDER_GROUP_ID}" ]; then + if [ "${RENDER_GROUP_ID}" -ne 0 ]; then + groupadd -g "${RENDER_GROUP_ID}" render + usermod -aG render odm + fi +fi + +while IFS='=' read -r name value ; do + echo "export ${name}=\"${value}\"" >> /home/odm/env +done < <(env | grep -v "HOME") +chown odm:odm /home/odm/env + +su - odm -c "source /home/odm/env; cd /var/www; echo $WO_DEFAULT_NODES; /usr/bin/node /var/www/index.js $@"