Skip to content

Instantly share code, notes, and snippets.

@chambbj
Created June 8, 2017 12:18
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save chambbj/a5d9b3f40d13d19276b1b7a31f806393 to your computer and use it in GitHub Desktop.
Save chambbj/a5d9b3f40d13d19276b1b7a31f806393 to your computer and use it in GitHub Desktop.
Unofficial PDAL + Geowave Dockerfile
FROM pdal/dependencies:latest
ENV CC gcc
ENV CXX g++
RUN echo oracle-java8-installer shared/accepted-oracle-license-v1-1 select true | debconf-set-selections && \
add-apt-repository -y ppa:webupd8team/java && \
apt-get update && \
apt-get install -y --fix-missing --no-install-recommends \
oracle-java8-installer \
libhpdf-dev \
python-all-dev \
python-numpy \
libsqlite3-mod-spatialite && \
rm -rf /var/lib/apt/lists/* && \
rm -rf /var/cache/oracle-jdk8-installer
ENV JAVA_HOME /usr/lib/jvm/java-8-oracle
RUN mkdir geowave \
&& cd geowave \
&& wget http://s3.amazonaws.com/geowave-rpms/release/TARBALL/geowave-0.8.8.1-24f1a85-jace-source.tar.gz \
&& tar -xzf geowave-*-jace-source.tar.gz \
&& mkdir build \
&& cd build \
&& cmake -G "Unix Makefiles" \
-DCMAKE_BUILD_TYPE=Release \
-DBUILD_SHARED_LIBS=ON \
-DCMAKE_INSTALL_PREFIX=/usr/local \
.. \
&& make -j 2 \
&& make install \
&& chmod 777 /geowave/build/libjace.so \
&& ln -s /geowave/build/libjace.so /usr/lib/libjace.so \
&& echo "/usr/lib/jvm/java-8-oracle/jre/lib/amd64/server" | tee --append /etc/ld.so.conf.d/jvm.conf \
&& cat /etc/ld.so.conf.d/jvm.conf \
&& ldconfig
RUN cd / && git clone --depth=1 https://github.com/PDAL/PDAL \
&& cd PDAL \
&& git checkout master \
&& mkdir build \
&& cd build \
&& cmake \
-DBUILD_PLUGIN_CPD=OFF \
-DBUILD_PLUGIN_MBIO=ON \
-DBUILD_PLUGIN_GEOWAVE=ON \
-DBUILD_PLUGIN_GREYHOUND=ON \
-DBUILD_PLUGIN_HEXBIN=ON \
-DBUILD_PLUGIN_ICEBRIDGE=ON \
-DBUILD_PLUGIN_MRSID=ON \
-DBUILD_PLUGIN_NITF=ON \
-DBUILD_PLUGIN_OCI=OFF \
-DBUILD_PLUGIN_PCL=ON \
-DBUILD_PLUGIN_PGPOINTCLOUD=ON \
-DBUILD_PLUGIN_SQLITE=ON \
-DBUILD_PLUGIN_RIVLIB=OFF \
-DBUILD_PLUGIN_PYTHON=ON \
-DCMAKE_INSTALL_PREFIX=/usr \
-DENABLE_CTEST=OFF \
-DWITH_APPS=ON \
-DWITH_LAZPERF=ON \
-DWITH_LASZIP=ON \
-DWITH_TESTS=ON \
-DWITH_PDAL_JNI=ON \
-DCMAKE_BUILD_TYPE=Release \
-DCMAKE_INSTALL_PREFIX=/usr/local \
-DJACE_INCLUDE_DIR=/usr/local/include \
.. \
&& make -j 2\
&& make install
RUN pip install packaging \
&& pip install PDAL
RUN git clone https://github.com/PDAL/PRC.git \
&& cd PRC \
&& git checkout master \
&& mkdir build \
&& cd build \
&& echo `pwd` \
&& ls .. \
&& cmake \
-DCMAKE_BUILD_TYPE=Release \
-DPDAL_DIR=/usr/lib/pdal/cmake \
-DCMAKE_INSTALL_PREFIX=/usr/local \
.. \
&& make \
&& make install
RUN tr -d '\r' < /PDAL/scripts/linux-install-scripts/geowave > /etc/init.d/geowave \
&& chmod 755 /etc/init.d/geowave \
&& update-rc.d geowave defaults \
&& service geowave start
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment