Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Workaround for Mesos in Debian Stretch #5464

Merged
merged 1 commit into from Aug 14, 2017
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Jump to
Jump to file
Failed to load files.
Diff view
Diff view
13 changes: 6 additions & 7 deletions Dockerfile
Expand Up @@ -6,21 +6,19 @@
# It will reresolve all dependencies on every change (as opposed to Dockerfile.development)
# but it ultimately results in a smaller docker image.
#
FROM openjdk:8-jdk
FROM buildpack-deps:jessie-curl

COPY . /marathon
WORKDIR /marathon

# TODO: line below starting touch /usr/local/bin/systemctl is a necessary hack for the installation
# of mesos. We need to find a better solution. https://jira.mesosphere.com/browse/MARATHON-7694

RUN apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv E56151BF && \
touch /usr/local/bin/systemctl && chmod +x /usr/local/bin/systemctl && \
echo "deb http://ftp.debian.org/debian jessie-backports main" >> /etc/apt/sources.list && \
echo "deb http://repos.mesosphere.com/debian jessie-unstable main" | tee /etc/apt/sources.list.d/mesosphere.list && \
echo "deb http://repos.mesosphere.com/debian jessie-testing main" | tee -a /etc/apt/sources.list.d/mesosphere.list && \
echo "deb http://repos.mesosphere.com/debian jessie main" | tee -a /etc/apt/sources.list.d/mesosphere.list && \
MESOS_VERSION=$(sed -n 's/^.*MesosDebian = "\(.*\)"/\1/p' </marathon/project/Dependencies.scala) && \
apt-get update && \
apt-get install -y openjdk-8-jdk-headless openjdk-8-jre-headless ca-certificates-java=20161107~bpo8+1 && \
apt-get install --no-install-recommends -y --force-yes mesos=$MESOS_VERSION && \
apt-get clean && \
eval $(sed s/sbt.version/SBT_VERSION/ </marathon/project/build.properties) && \
Expand All @@ -29,8 +27,9 @@ RUN apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv E56151BF && \
cp /marathon/project/sbt /usr/local/bin && chmod +x /usr/local/bin/sbt && \
sbt -Dsbt.log.format=false assembly && \
mv $(find target -name 'marathon-assembly-*.jar' | sort | tail -1) ./ && \
rm -rf target/* ~/.sbt ~/.ivy2 && \
rm -rf project/target project/project/target plugin-interface/target target/* ~/.sbt ~/.ivy2 && \
mv marathon-assembly-*.jar target && \
rm -rf /var/lib/apt/lists/* /tmp/* /var/tmp/*
/var/lib/dpkg/info/ca-certificates-java.postinst configure && \
rm -rf /var/lib/apt/lists/* /tmp/* /var/tmp/* && \

ENTRYPOINT ["./bin/start"]