Skip to content

Commit

Permalink
Merge pull request #714 from zalokhan/docker
Browse files Browse the repository at this point in the history
Adding docker integration
  • Loading branch information
no2chem committed Jun 14, 2017
2 parents 2249c07 + fbbf77f commit e57ced7
Show file tree
Hide file tree
Showing 3 changed files with 95 additions and 0 deletions.
5 changes: 5 additions & 0 deletions .travis.yml
Original file line number Diff line number Diff line change
Expand Up @@ -15,6 +15,7 @@ after_success:
- .travis_scripts/javadocs.sh
- .travis_scripts/mvnrepo.sh
- .travis_scripts/push_deb.sh
- .travis_scripts/push_docker.sh
before_cache:
- rm -rf $HOME/.m2/repository/org/corfudb
cache:
Expand All @@ -35,6 +36,10 @@ env:
WJZd15DtGSetu3HuaPE/Ap0EaPkR1D68ZUIFxyqUho8AY/rLGuANUrAY5U02jO1K1+iaYFMecRr2ZlOEK4N1XiBNz2gMnYmkHmUs9Gz+J3eA8SXdYOHsKyI5iRpyUgwzHIVLOKz03cvDlI04Rrm0Uhe/7hjNaXVge6I0YKPmiXI=
- secure: >-
YSaXp8PYE5YOaHOJTWXHIORNTP0oWdNDhSAMud1OD7LvH7ZdSPt35XVG8+Vagz+Y4mufCu0UVqVq62KJLtG9AVpKXxTvDdvCGZ7N5WLbGO0CAscjOuXm1uEKfGefpyFj2HZJ+h8zbuinAoZ5RHZa+SniRb1iES0lJUfxcYBMmoQ=
- secure: >- # DOCKER_USERNAME
R7GUxZyUxj1WfvKN7Zcigo59+2Q2UTU489yGw9ac/DKafszwvrJ/z0aUXzADOhR7EIaBuElYb7zytr/DSTeDMoxq+EniH/OTx4S/Btb2Qw5RBw2pYzuahyqiVk3Tc6gcIvlE6gNl4b8K58YzwC634WxnPDmxH4hyIrE4sc3JJcQ=
- secure: >- # DOCKER_PASSWORD
lzZmbc2HZgHX+xuBqXwwd9Zql+ae+Vw/+oUdO2QfQEuLqZKSUbjefMuaeFPsBrd8f9sUalJBaJ6VxecoWia0Ncj4QC9PR4MxaZaDm2Zt87KGbpxqvBcbZK332toNPTznV9Fozt5Iu0ofcCr86g6nyXcO+Sqr/5mMr/w6NVtYeJQ=
addons:
apt:
packages: reprepro
12 changes: 12 additions & 0 deletions .travis_scripts/push_docker.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
#!/bin/bash

if [ "$TRAVIS_BRANCH" == "master" ] && [ "$TRAVIS_PULL_REQUEST" == "false" ]; then
echo -e "Publishing docker image..."

docker build -t corfu .
docker tag corfu corfudb/corfu:latest
docker login -u $DOCKER_USERNAME -p $DOCKER_PASSWORD
docker push corfudb/corfu

echo -e "Docker image pushed."
fi
78 changes: 78 additions & 0 deletions Dockerfile
Original file line number Diff line number Diff line change
@@ -0,0 +1,78 @@
FROM alpine:3.4

# Minimal java image referenced from anapsix/alpine-java
MAINTAINER Zeeshan Lokhandwala

# Java Version and other ENV
ENV JAVA_VERSION_MAJOR=8 \
JAVA_VERSION_MINOR=131 \
JAVA_VERSION_BUILD=11 \
JAVA_PACKAGE=jdk \
JAVA_JCE=standard \
JAVA_HOME=/opt/jdk \
PATH=${PATH}:/opt/jdk/bin:/usr/share/corfu/bin \
GLIBC_VERSION=2.23-r3 \
LANG=C.UTF-8

# do all in one step
RUN set -ex && \
apk upgrade --update && \
apk add --update libstdc++ curl ca-certificates bash && \
for pkg in glibc-${GLIBC_VERSION} glibc-bin-${GLIBC_VERSION} glibc-i18n-${GLIBC_VERSION}; do curl -sSL https://github.com/andyshinn/alpine-pkg-glibc/releases/download/${GLIBC_VERSION}/${pkg}.apk -o /tmp/${pkg}.apk; done && \
apk add --allow-untrusted /tmp/*.apk && \
rm -v /tmp/*.apk && \
( /usr/glibc-compat/bin/localedef --force --inputfile POSIX --charmap UTF-8 C.UTF-8 || true ) && \
echo "export LANG=C.UTF-8" > /etc/profile.d/locale.sh && \
/usr/glibc-compat/sbin/ldconfig /lib /usr/glibc-compat/lib && \
mkdir /opt && \
curl -jksSLH "Cookie: oraclelicense=accept-securebackup-cookie" -o /tmp/java.tar.gz \
http://download.oracle.com/otn-pub/java/jdk/${JAVA_VERSION_MAJOR}u${JAVA_VERSION_MINOR}-b${JAVA_VERSION_BUILD}/d54c1d3a095b4ff2b6607d096fa80163/${JAVA_PACKAGE}-${JAVA_VERSION_MAJOR}u${JAVA_VERSION_MINOR}-linux-x64.tar.gz && \
gunzip /tmp/java.tar.gz && \
tar -C /opt -xf /tmp/java.tar && \
ln -s /opt/jdk1.${JAVA_VERSION_MAJOR}.0_${JAVA_VERSION_MINOR} /opt/jdk && \
if [ "${JAVA_JCE}" == "unlimited" ]; then echo "Installing Unlimited JCE policy" >&2 && \
curl -jksSLH "Cookie: oraclelicense=accept-securebackup-cookie" -o /tmp/jce_policy-${JAVA_VERSION_MAJOR}.zip \
http://download.oracle.com/otn-pub/java/jce/${JAVA_VERSION_MAJOR}/jce_policy-${JAVA_VERSION_MAJOR}.zip && \
cd /tmp && unzip /tmp/jce_policy-${JAVA_VERSION_MAJOR}.zip && \
cp -v /tmp/UnlimitedJCEPolicyJDK8/*.jar /opt/jdk/jre/lib/security; \
fi && \
sed -i s/#networkaddress.cache.ttl=-1/networkaddress.cache.ttl=10/ $JAVA_HOME/jre/lib/security/java.security && \
apk del curl glibc-i18n && \
rm -rf /opt/jdk/*src.zip \
/opt/jdk/lib/missioncontrol \
/opt/jdk/lib/visualvm \
/opt/jdk/lib/*javafx* \
/opt/jdk/jre/plugin \
/opt/jdk/jre/bin/javaws \
/opt/jdk/jre/bin/jjs \
/opt/jdk/jre/bin/orbd \
/opt/jdk/jre/bin/pack200 \
/opt/jdk/jre/bin/policytool \
/opt/jdk/jre/bin/rmid \
/opt/jdk/jre/bin/rmiregistry \
/opt/jdk/jre/bin/servertool \
/opt/jdk/jre/bin/tnameserv \
/opt/jdk/jre/bin/unpack200 \
/opt/jdk/jre/lib/javaws.jar \
/opt/jdk/jre/lib/deploy* \
/opt/jdk/jre/lib/desktop \
/opt/jdk/jre/lib/*javafx* \
/opt/jdk/jre/lib/*jfx* \
/opt/jdk/jre/lib/amd64/libdecora_sse.so \
/opt/jdk/jre/lib/amd64/libprism_*.so \
/opt/jdk/jre/lib/amd64/libfxplugins.so \
/opt/jdk/jre/lib/amd64/libglass.so \
/opt/jdk/jre/lib/amd64/libgstreamer-lite.so \
/opt/jdk/jre/lib/amd64/libjavafx*.so \
/opt/jdk/jre/lib/amd64/libjfx*.so \
/opt/jdk/jre/lib/ext/jfxrt.jar \
/opt/jdk/jre/lib/ext/nashorn.jar \
/opt/jdk/jre/lib/oblique-fonts \
/opt/jdk/jre/lib/plugin.jar \
/tmp/* /var/cache/apk/* && \
echo 'hosts: files mdns4_minimal [NOTFOUND=return] dns mdns4' >> /etc/nsswitch.conf

COPY cmdlets/target/cmdlets-0.1-SNAPSHOT-shaded.jar /usr/share/corfu/lib/cmdlets-0.1-SNAPSHOT-shaded.jar
COPY corfu_scripts /usr/share/corfu/corfu_scripts
COPY scripts /usr/share/corfu/scripts
COPY bin /usr/share/corfu/bin

0 comments on commit e57ced7

Please sign in to comment.