Spotter-VM/opendatakit/lxcfile

40 lines
1.2 KiB
Plaintext

IMAGE opendatakit
LAYER shared/alpine
LAYER shared/java
LAYER shared/tomcat
LAYER opendatakit/opendatakit
RUN EOF
# Install build dependencies
apk --no-cache add --virtual .deps git git-lfs openjdk8
# Clone ODK aggregate
git clone --depth 1 https://github.com/opendatakit/aggregate.git /srv/opendatakit
# Compile Java web archive
cd /srv/opendatakit
cp gradle.properties.example gradle.properties
./gradlew war
# Deploy web archive
mkdir /srv/tomcat/webapps/ROOT
unzip build/libs/aggregate-*.war -d /srv/tomcat/webapps/ROOT
# Create OS user
addgroup -S -g 8015 odk
adduser -S -u 8015 -h /srv/tomcat -s /bin/false -g odk -G odk odk
chown -R odk:odk /srv/tomcat/conf /srv/tomcat/logs /srv/tomcat/temp /srv/tomcat/webapps /srv/tomcat/work
# Cleanup
apk --no-cache del .deps
rm -rf /root/.gradle /root/.java /srv/opendatakit
EOF
MOUNT /srv/opendatakit/conf/server.xml srv/tomcat/conf/server.xml
MOUNT /srv/opendatakit/conf/jdbc.properties srv/tomcat/webapps/ROOT/WEB-INF/classes/jdbc.properties
MOUNT /srv/opendatakit/conf/security.properties srv/tomcat/webapps/ROOT/WEB-INF/classes/security.properties
USER 8015 8015
WORKDIR /srv/tomcat
CMD catalina.sh run