-
Notifications
You must be signed in to change notification settings - Fork 1
/
Dockerfile-jessyj
111 lines (85 loc) · 4.31 KB
/
Dockerfile-jessyj
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
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
FROM debian:jessie
ENV JAVA_VERSION=8 \
JAVA_UPDATE=45 \
JAVA_BUILD=14 \
JAVA_HOME=/usr/lib/jvm/default-jvm \
PATH=${PATH}:${JAVA_HOME}/bin
RUN apt-get update -y && apt-get upgrade -y && apt-get dist-upgrade -y
RUN apt-get install -y wget
RUN cd /tmp && \
wget --header "Cookie: oraclelicense=accept-securebackup-cookie;" \
"http://download.oracle.com/otn-pub/java/jdk/${JAVA_VERSION}u${JAVA_UPDATE}-b${JAVA_BUILD}/jdk-${JAVA_VERSION}u${JAVA_UPDATE}-linux-x64.tar.gz"
RUN cd /tmp && tar xzf "jdk-${JAVA_VERSION}u${JAVA_UPDATE}-linux-x64.tar.gz" && \
mkdir -p /usr/lib/jvm && \
mv "/tmp/jdk1.${JAVA_VERSION}.0_${JAVA_UPDATE}" "/usr/lib/jvm/java-${JAVA_VERSION}-oracle" && \
ln -s "java-${JAVA_VERSION}-oracle" $JAVA_HOME && \
ln -s $JAVA_HOME/bin/java /usr/bin/java && \
ln -s $JAVA_HOME/bin/javac /usr/bin/javac && \
rm -rf $JAVA_HOME/*src.zip && \
rm -rf $JAVA_HOME/lib/missioncontrol \
$JAVA_HOME/lib/visualvm \
$JAVA_HOME/lib/*javafx* \
$JAVA_HOME/jre/lib/plugin.jar \
$JAVA_HOME/jre/lib/ext/jfxrt.jar \
$JAVA_HOME/jre/bin/javaws \
$JAVA_HOME/jre/lib/javaws.jar \
$JAVA_HOME/jre/lib/desktop \
$JAVA_HOME/jre/plugin \
$JAVA_HOME/jre/lib/deploy* \
$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 && \
rm -rf $JAVA_HOME/jre/bin/jjs \
$JAVA_HOME/jre/bin/keytool \
$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/jfr.jar \
$JAVA_HOME/jre/lib/jfr \
$JAVA_HOME/jre/lib/oblique-fonts
# Systematically remove packages
RUN echo "Yes, do as I say!" | apt-get -y remove --force-yes systemd systemd-sysv sysv-rc sysvinit-utils
# Add S6 for process management
RUN apt-get install -y curl && cd /tmp && curl -L https://github.com/just-containers/s6-overlay/releases/download/v1.11.0.1/s6-overlay-amd64.tar.gz > /tmp/s6-overlay-amd64.tar.gz
RUN tar xzf /tmp/s6-overlay-amd64.tar.gz -C /
RUN apt-get install -y localepurge && dpkg-reconfigure localepurge && localepurge
RUN apt-get install -y deborphan inetutils-syslogd dnsmasq
#RUN echo "Yes, do as I say!" | apt-get -y remove --force-yes passwd
RUN echo "Yes, do as I say!" | apt-get -y remove --force-yes bash bsdutils netbase diffutils ncurses-base ncurses-bin startpar sed lsb-base login gzip udev mount grep dmsetup base-passwd util-linux libtext-charwidth-perl libtext-iconv-perl libtext-wrapi18n-perl libuuid-perl libcryptsetup4 libdevmapper1.02.1 libsystemd0 libgcrypt20 libcomerr2 iproute2 libsmartcols1 libslang2 libkmod2 libmount1 libblkid1 libprocps3 libudev1 e2fslibs e2fsprogs libncurses5 libncursesw5 libss2 libcap2-bin libgpg-error0 insserv
# Add in Busybox to replace the main utils, more on that later
RUN apt-get install -y busybox && apt-get autoremove -y
# SELinux config
RUN echo "Yes, do as I say!" | apt-get -y remove --force-yes libsemanage-common libsemanage1
# Remove unncessary config/static files
RUN rm -rf /usr/share/bash-completion /lib/udev /usr/share/doc/* /usr/share/doc-base/
RUN dpkg --purge man-db manpages
RUN rm -rf /usr/share/man
#Now properly install BusyBox and remove all binaries it replaces
COPY busy-install.sh /tmp/busy-install.sh
RUN chmod 755 /tmp/busy-install.sh
RUN /tmp/busy-install.sh
#RUN apt-get remove -y tzdata
RUN apt-get remove -y wget curl
# Remove Cache and build files
RUN apt-get purge -y $(deborphan)
RUN apt-get remove -y deborphan localepurge
RUN apt-get clean
RUN rm -rf /tmp/*
#Overlay
COPY overlay /
RUN find /etc -name "*.sh" -exec chmod a+x {} \;
RUN apt list --installed
RUN java -version
# Scores on the doors please
RUN du -sh /usr/lib/jvm/java-8-oracle/jre/lib/* || :