Skip to content
Open
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
53 changes: 53 additions & 0 deletions opensim-core/opensim-java/dockerfile-ubuntu-with-moco
Original file line number Diff line number Diff line change
@@ -0,0 +1,53 @@
FROM stanfordnmbl/opensim-deps:4.4-with-moco

LABEL maintainer="Ayman Habib"

# The following sets timezone to avoid prompt for timezone when installing packages
ENV TZ=America/Los_Angeles
RUN ln -snf /usr/share/zoneinfo/$TZ /etc/localtime && echo $TZ > /etc/timezone
RUN apt-get update && DEBIAN_FRONTEND=noninteractive && apt-get --yes install \
libpcre3 libpcre3-dev flex bison

# install openjdk8
RUN apt-get install -y openjdk-8-jdk \
&& apt-get install -y ant \
&& apt-get clean \
&& rm -rf /var/lib/apt/lists/* \
&& rm -rf /var/cache/oracle-jdk8-installer;

# Fix certificate issue https://bugs.launchpad.net/ubuntu/+source/ca-certificates-java/+bug/983302
RUN apt-get update \
&& apt-get install -y ca-certificates-java \
&& apt-get clean \
&& update-ca-certificates -f \
&& rm -rf /var/lib/apt/lists/* \
&& rm -rf /var/cache/oracle-jdk8-installer;

# Setup JAVA_HOME, this is useful for docker commandline
ENV JAVA_HOME /usr/lib/jvm/java-8-openjdk-amd64/
RUN export JAVA_HOME

#install SWIG
RUN mkdir ~/swig-source && cd ~/swig-source \
&& wget https://github.com/swig/swig/archive/refs/tags/rel-4.0.2.tar.gz \
&& tar xzf rel-4.0.2.tar.gz \
&& cd swig-rel-4.0.2 \
&& sh autogen.sh \
&& ./configure --prefix=$HOME/swig --disable-ccache \
&& make \
&& make -j4 install \
&& rm -rf ~/swig-source

RUN mkdir opensim_build \
&& cd opensim_build \
&& cmake ../opensim-core \
-DSWIG_DIR=~/swig/share/swig -DSWIG_EXECUTABLE=~/swig/bin/swig -DBUILD_JAVA_WRAPPING=ON -DBUILD_TESTING=OFF \
-DCMAKE_INSTALL_PREFIX=$OPENSIM_INSTALL -DOPENSIM_DEPENDENCIES_DIR=$OPENSIM_DEPENDENCIES_HOME \
-DOPENSIM_C3D_PARSER=ezc3d -DSWIG_DOXYGEN=OFF -DOPENSIM_WITH_CASADI=ON -DOPENSIM_WITH_TROPTER=ON \
&& make -j8 \
&& make install \
&& rm -rf ../opensim_build \
&& rm -rf ~/opensim_dependencies_install \
&& rm -rf $HOME/swig

# image stored at stanfordnmbl/opensim-java