diff --git a/docker/hpp-fcl/Dockerfile b/docker/hpp-fcl/Dockerfile
new file mode 100644
index 0000000000000000000000000000000000000000..4ce7f93d0a896a424728516679bc3434dc22474c
--- /dev/null
+++ b/docker/hpp-fcl/Dockerfile
@@ -0,0 +1,55 @@
+ARG UBUNTU=bionic
+FROM ubuntu:$UBUNTU
+
+# Setup Robotpkg apt binary repository
+ARG UBUNTU=bionic
+ENV UBUNTU=$UBUNTU
+RUN apt-get update -y && apt-get install -y \
+    build-essential \
+    cmake \
+    curl \
+    git \
+ && echo "deb [arch=amd64] http://robotpkg.openrobots.org/packages/debian/pub $UBUNTU robotpkg" \
+ >> /etc/apt/sources.list.d/robotpkg.list \
+ && echo "deb [arch=amd64] http://robotpkg.openrobots.org/wip/packages/debian/pub $UBUNTU robotpkg" \
+ >> /etc/apt/sources.list.d/robotpkg.list \
+ && curl http://robotpkg.openrobots.org/packages/debian/robotpkg.key | apt-key add - \
+ && rm -rf /var/lib/apt/lists/*
+
+ENV ROBOTPKG_BASE=/opt/openrobots
+ENV CMAKE_PREFIX_PATH=$ROBOTPKG_BASE:$CMAKE_PREFIX_PATH \
+      LD_LIBRARY_PATH=$ROBOTPKG_BASE/lib:$ROBOTPKG_BASE/lib/plugin:$LD_LIBRARY_PATH \
+                 PATH=$ROBOTPKG_BASE/bin:$ROBOTPKG_BASE/sbin:$PATH \
+      PKG_CONFIG_PATH=$ROBOTPKG_BASE/lib/pkgconfig:$PKG_CONFIG_PATH \
+     ROS_PACKAGE_PATH=$ROBOTPKG_BASE/share:$ROS_PACKAGE_PATH
+
+# get hpp-fcl dependencies
+ARG PYTHON=python3
+ENV PYTHON=$PYTHON
+RUN apt-get update -y \
+ && apt-get install -y \
+    $(echo $PYTHON | sed 's/2//') \
+ && apt-get install -y \
+    libassimp-dev \
+    libboost-all-dev \
+    robotpkg-octomap \
+    robotpkg-py$($PYTHON -V 2>&1 | sed 's/.*\([23]\)\.\([0-9]\).*/\1\2/')-eigenpy \
+ && rm -rf /var/lib/apt/lists/*
+
+# (in)validate docker build cache with the HTTP "Last-Modified" header from github
+ARG NAMESPACE=humanoid-path-planner
+ARG BRANCH=devel
+ADD https://api.github.com/repos/${NAMESPACE}/hpp-fcl/commits/${BRANCH} /tmp
+
+RUN git clone --recursive --branch $BRANCH https://github.com/$NAMESPACE/hpp-fcl.git \
+ && mkdir hpp-fcl/build
+
+WORKDIR /hpp-fcl/build
+ARG MAKE_JOBS=1
+ENV CTEST_PARALLEL_LEVEL=$MAKE_JOBS CTEST_OUTPUT_ON_FAILURE=true
+RUN cmake -DPYTHON_EXECUTABLE=$(which $PYTHON) .. \
+ && make -j$MAKE_JOBS \
+ && make test \
+ && make install
+
+ENV PYTHONPATH=/usr/local/lib/python3/dist-packages/