-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathDockerfile
67 lines (62 loc) · 3.09 KB
/
Dockerfile
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
# AlpineLinux with the GNU C Library, Bash and Oracle Java 8
FROM alpine:3.7
# Versions and constants for the RUN command
ENV GLIBC_VERSION=2.28-r0 \
JAVA_VERSION_MAJOR=8 \
JAVA_VERSION_MINOR=202 \
JAVA_VERSION_BUILD=08 \
JAVA_PATH=1961070e4c9b4e26a04e7f5a083f551e \
JAVA_PACKAGE=server-jre \
JAVA_HOME=/opt/jdk
RUN cd /tmp && \
# install glibc
# as discribed in https://github.com/sgerrand/alpine-pkg-glibc
apk --update --virtual build-dependencies add ca-certificates wget && \
wget -q -O /etc/apk/keys/sgerrand.rsa.pub https://alpine-pkgs.sgerrand.com/sgerrand.rsa.pub && \
wget https://github.com/sgerrand/alpine-pkg-glibc/releases/download/${GLIBC_VERSION}/glibc-${GLIBC_VERSION}.apk && \
wget https://github.com/sgerrand/alpine-pkg-glibc/releases/download/${GLIBC_VERSION}/glibc-bin-${GLIBC_VERSION}.apk && \
wget https://github.com/sgerrand/alpine-pkg-glibc/releases/download/${GLIBC_VERSION}/glibc-i18n-${GLIBC_VERSION}.apk && \
apk add glibc-${GLIBC_VERSION}.apk && \
apk add glibc-bin-${GLIBC_VERSION}.apk glibc-i18n-${GLIBC_VERSION}.apk && \
/usr/glibc-compat/bin/localedef -i en_US -f UTF-8 en_US.UTF-8 && \
# add bash & curl to container
apk --update add bash curl && \
# download JDK
wget --header "Cookie: oraclelicense=accept-securebackup-cookie;" \
http://download.oracle.com/otn-pub/java/jdk/${JAVA_VERSION_MAJOR}u${JAVA_VERSION_MINOR}-b${JAVA_VERSION_BUILD}/${JAVA_PATH}/${JAVA_PACKAGE}-${JAVA_VERSION_MAJOR}u${JAVA_VERSION_MINOR}-linux-x64.tar.gz && \
# setup JDK and remove needless stuff
mkdir /opt && \
tar -xzf ${JAVA_PACKAGE}-${JAVA_VERSION_MAJOR}u${JAVA_VERSION_MINOR}-linux-x64.tar.gz && \
mv jdk1.${JAVA_VERSION_MAJOR}.0_${JAVA_VERSION_MINOR} $JAVA_HOME && \
rm -rf $JAVA_HOME/jre/plugin \
$JAVA_HOME/jre/bin/javaws \
$JAVA_HOME/jre/bin/jjs \
$JAVA_HOME/jre/bin/orbd \
$JAVA_HOME/jre/bin/pack200 \
$JAVA_HOME/jre/bin/policytool \
$JAVA_HOME/jre/bin/rmid \
$JAVA_HOME/jre/bin/rmiregistry \
$JAVA_HOME/jre/bin/servertool \
$JAVA_HOME/jre/bin/tnameserv \
$JAVA_HOME/jre/bin/unpack200 \
$JAVA_HOME/jre/lib/javaws.jar \
$JAVA_HOME/jre/lib/deploy* \
$JAVA_HOME/jre/lib/desktop \
$JAVA_HOME/jre/lib/*javafx* \
$JAVA_HOME/jre/lib/*jfx* \
$JAVA_HOME/jre/lib/amd64/libdecora_sse.so \
$JAVA_HOME/jre/lib/amd64/libprism_*.so \
$JAVA_HOME/jre/lib/amd64/libfxplugins.so \
$JAVA_HOME/jre/lib/amd64/libglass.so \
$JAVA_HOME/jre/lib/amd64/libgstreamer-lite.so \
$JAVA_HOME/jre/lib/amd64/libjavafx*.so \
$JAVA_HOME/jre/lib/amd64/libjfx*.so \
$JAVA_HOME/jre/lib/ext/jfxrt.jar \
$JAVA_HOME/jre/lib/ext/nashorn.jar \
$JAVA_HOME/jre/lib/oblique-fonts \
$JAVA_HOME/jre/lib/plugin.jar \
/tmp/* /var/cache/apk/* && \
apk --update del build-dependencies
COPY bashrc /root/.bashrc
ENV PATH=${PATH}:${JAVA_HOME}/bin
LABEL maintainer="Daniel Wojtucki"