13
13
ARG ARCH
14
14
FROM testing/centos7-oj17:unlabelled$ARCH
15
15
16
- ARG ACCUMULO_VERSION=1.7.4
17
- ARG HADOOP_VERSION=2.6.5
18
- ARG ZOOKEEPER_VERSION=3.4.14
19
- ARG JAVA8_ZULU_VERSION=8.56.0.21-ca-jdk8.0.302
16
+ ARG ACCUMULO_VERSION=3.0.0
17
+ ARG HADOOP_VERSION=3.3.5
18
+ ARG ZOOKEEPER_VERSION=3.8.2
19
+ ENV JAVA_HOME="/usr/lib/jvm/jdk-11"
20
+ ARG JDK_DOWNLOAD_LINK="https://api.adoptium.net/v3/binary/version/jdk-11.0.19%2B7/linux/x64/jdk/hotspot/normal/eclipse?project=jdk"
20
21
ARG IMAGE_ROOT_INSTALL=/usr/local/lib
21
22
22
23
ENV HADOOP_HOME=$IMAGE_ROOT_INSTALL/hadoop
@@ -26,27 +27,25 @@ ENV ZOOKEEPER_HOME=$IMAGE_ROOT_INSTALL/zookeeper
26
27
ARG HADOOP_CONF=$HADOOP_HOME/conf
27
28
ENV HADOOP_PREFIX=$HADOOP_HOME
28
29
29
- # TODO Apache Archive is rate limited -- these should probably go in S3
30
30
ARG BASE_URL=https://archive.apache.org/dist
31
31
ARG ACCUMULO_BINARY_PATH=$BASE_URL/accumulo/$ACCUMULO_VERSION/accumulo-$ACCUMULO_VERSION-bin.tar.gz
32
32
ARG HADOOP_BINARY_PATH=$BASE_URL/hadoop/core/hadoop-$HADOOP_VERSION/hadoop-$HADOOP_VERSION.tar.gz
33
- ARG ZOOKEEPER_BINARY_PATH=$BASE_URL/zookeeper/zookeeper-$ZOOKEEPER_VERSION/zookeeper-$ZOOKEEPER_VERSION.tar.gz
33
+ ARG ZOOKEEPER_BINARY_PATH=$BASE_URL/zookeeper/zookeeper-$ZOOKEEPER_VERSION/apache- zookeeper-$ZOOKEEPER_VERSION-bin .tar.gz
34
34
35
35
RUN yum update -y && \
36
- yum install -y gettext && \
37
- # Install Zulu JDK
38
- echo "Downloading zulu${JAVA8_ZULU_VERSION}-linux.x86_64.rpm..." && \
39
- curl -o /tmp/jdk8.rpm --url https://cdn.azul.com/zulu/bin/zulu${JAVA8_ZULU_VERSION}-linux.x86_64.rpm && \
40
- yum -y localinstall /tmp/jdk8.rpm && \
41
- rm /tmp/jdk8.rpm && \
42
- # Set JDK 8 as a default one
43
- alternatives --set java /usr/lib/jvm/zulu-8/jre/bin/java && \
44
- alternatives --set javac /usr/lib/jvm/zulu-8/bin/javac && \
36
+ yum install -y make gcc-c++ && \
37
+ # Install Zulu JDK \
38
+ mkdir -p "${JAVA_HOME}" && \
39
+ echo "Downloading Temurin 11: ${JDK_DOWNLOAD_LINK}" && \
40
+ curl -#LfS "${JDK_DOWNLOAD_LINK}" | tar -zx --strip 1 -C "${JAVA_HOME}" && \
41
+ ls -la "${JAVA_HOME}" && \
42
+ # Set JDK 11 as a default one \
43
+ alternatives --install /usr/bin/java java ${JAVA_HOME}/bin/java 3 && \
44
+ alternatives --install /usr/bin/javac javac ${JAVA_HOME}/bin/javac 3 && \
45
+ alternatives --set java ${JAVA_HOME}/bin/java && \
46
+ alternatives --set javac ${JAVA_HOME}/bin/javac && \
45
47
yum clean all -y
46
48
47
- # Override JAVA_HOME inherited from testing/centos7-oj17
48
- ENV JAVA_HOME=/usr/lib/jvm/zulu-8
49
-
50
49
RUN mkdir -p $IMAGE_ROOT_INSTALL
51
50
52
51
# Download Hadoop
@@ -61,39 +60,38 @@ RUN wget --quiet $ACCUMULO_BINARY_PATH && \
61
60
rm accumulo-$ACCUMULO_VERSION-bin.tar.gz && \
62
61
ln -s $IMAGE_ROOT_INSTALL/accumulo-$ACCUMULO_VERSION $ACCUMULO_HOME
63
62
64
- # Copy sample Accumulo configuration files and update the instance.volumes property
65
- ENV CONF_SAMPLE_DIR=$ACCUMULO_HOME/conf/examples/3GB/standalone
66
- RUN cp \
67
- $CONF_SAMPLE_DIR/accumulo-env.sh \
68
- $CONF_SAMPLE_DIR/accumulo-site.xml \
69
- $CONF_SAMPLE_DIR/auditLog.xml \
70
- $CONF_SAMPLE_DIR/generic_logger.properties \
71
- $CONF_SAMPLE_DIR/generic_logger.xml \
72
- $CONF_SAMPLE_DIR/log4j.properties \
73
- $CONF_SAMPLE_DIR/monitor_logger.properties \
74
- $CONF_SAMPLE_DIR/monitor_logger.xml \
75
- $ACCUMULO_HOME/conf && \
76
- sed -i s/"<value><\/ value>" /"<value>file:\/\/\/ tmp\/ accumulo<\/ value>" / $ACCUMULO_HOME/conf/accumulo-site.xml
63
+ # Compile Accumulo native
64
+ RUN cd $ACCUMULO_HOME/lib/ && \
65
+ tar -zxvf $ACCUMULO_HOME/lib/accumulo-native-$ACCUMULO_VERSION.tar.gz && \
66
+ cd $ACCUMULO_HOME/lib/accumulo-native-$ACCUMULO_VERSION && \
67
+ make && \
68
+ mv libaccumulo.so ../native && \
69
+ cd .. && \
70
+ rm -Rf accumulo-native-$ACCUMULO_VERSION*
77
71
78
72
# Download ZooKeeper
79
73
RUN wget --quiet $ZOOKEEPER_BINARY_PATH && \
80
- tar -xf zookeeper-$ZOOKEEPER_VERSION.tar.gz -C $IMAGE_ROOT_INSTALL && \
81
- rm zookeeper-$ZOOKEEPER_VERSION.tar.gz && \
82
- ln -s $IMAGE_ROOT_INSTALL/zookeeper-$ZOOKEEPER_VERSION $ZOOKEEPER_HOME && \
74
+ tar -xf apache- zookeeper-$ZOOKEEPER_VERSION-bin .tar.gz -C $IMAGE_ROOT_INSTALL && \
75
+ rm apache- zookeeper-$ZOOKEEPER_VERSION-bin .tar.gz && \
76
+ ln -s $IMAGE_ROOT_INSTALL/apache- zookeeper-$ZOOKEEPER_VERSION-bin $ZOOKEEPER_HOME && \
83
77
cp $ZOOKEEPER_HOME/conf/zoo_sample.cfg $ZOOKEEPER_HOME/conf/zoo.cfg
84
78
85
79
RUN mkdir -p /var/log/zookeeper /var/log/accumulo
86
80
87
81
COPY ./files /
88
82
83
+ RUN mv /etc/accumulo.properties /usr/local/lib/accumulo/conf/
84
+
89
85
# Initialize Accumulo which requires ZooKeeper to be started
90
- RUN ${ZOOKEEPER_HOME}/bin/zkServer.sh start && \
86
+ RUN ${ZOOKEEPER_HOME}/bin/zkServer-initialize.sh --myid=0 && \
87
+ ${ZOOKEEPER_HOME}/bin/zkServer.sh start && \
91
88
${ACCUMULO_HOME}/bin/accumulo init --user root --password secret --instance-name default
92
89
93
90
# ZooKeeper
94
91
EXPOSE 2181
95
92
# Accumulo Monitor
96
93
EXPOSE 50095
94
+ EXPOSE 9995
97
95
# Accumulo Monitor Logs
98
96
EXPOSE 4560
99
97
# Accumulo TabletServer
0 commit comments