mirror of
https://github.com/apache/nifi.git
synced 2025-02-07 18:48:51 +00:00
NIFI-10857 Fixed MiNiFi-C2 ITs and optimized MiNiFi and MiNiFi-C2 Docker images
This closes #6702 Signed-off-by: David Handermann <exceptionfactory@apache.org>
This commit is contained in:
parent
4ea425e235
commit
8b71edd61a
@ -180,6 +180,24 @@ limitations under the License.
|
||||
<version>${project.version}</version>
|
||||
<type>war</type>
|
||||
</dependency>
|
||||
|
||||
<!-- dependencies for jaxb/activation/annotation for running MiNiFi on Java 11 -->
|
||||
<!-- TODO: remove these once minimum Java version is 11 -->
|
||||
<dependency>
|
||||
<groupId>jakarta.xml.bind</groupId>
|
||||
<artifactId>jakarta.xml.bind-api</artifactId>
|
||||
<version>${jakarta.xml.bind-api.version}</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.glassfish.jaxb</groupId>
|
||||
<artifactId>jaxb-runtime</artifactId>
|
||||
<version>${jaxb.runtime.version}</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>javax.annotation</groupId>
|
||||
<artifactId>javax.annotation-api</artifactId>
|
||||
<version>${javax.annotation-api.version}</version>
|
||||
</dependency>
|
||||
</dependencies>
|
||||
<profiles>
|
||||
<profile>
|
||||
|
@ -45,6 +45,24 @@
|
||||
<include>*:war</include>
|
||||
</includes>
|
||||
</dependencySet>
|
||||
|
||||
<!-- Write out the bootstrap libs for java11 to its own dir -->
|
||||
<!-- TODO: remove this dependency set once minimum Java version is 11 -->
|
||||
<dependencySet>
|
||||
<scope>runtime</scope>
|
||||
<useProjectArtifact>false</useProjectArtifact>
|
||||
<outputDirectory>lib/java11</outputDirectory>
|
||||
<directoryMode>0770</directoryMode>
|
||||
<fileMode>0664</fileMode>
|
||||
<useTransitiveFiltering>true</useTransitiveFiltering>
|
||||
<includes>
|
||||
<include>org.glassfish.jaxb:jaxb-runtime</include>
|
||||
<include>jakarta.xml.bind:jakarta.xml.bind-api</include>
|
||||
<include>javax.annotation:javax.annotation-api</include>
|
||||
<include>com.sun.activation:jakarta.activation</include>
|
||||
<include>jakarta.activation:jakarta.activation-api</include>
|
||||
</includes>
|
||||
</dependencySet>
|
||||
</dependencySets>
|
||||
<fileSets>
|
||||
<fileSet>
|
||||
|
@ -16,17 +16,19 @@
|
||||
# under the License.
|
||||
#
|
||||
|
||||
FROM eclipse-temurin:11-jre
|
||||
LABEL maintainer="Apache NiFi <dev@nifi.apache.org>"
|
||||
LABEL site="https://nifi.apache.org"
|
||||
ARG IMAGE_NAME=eclipse-temurin
|
||||
ARG IMAGE_TAG=11-jre
|
||||
FROM ${IMAGE_NAME}:${IMAGE_TAG} as builder
|
||||
LABEL stage=builder
|
||||
|
||||
ARG UID=1000
|
||||
ARG GID=1000
|
||||
ARG MINIFI_C2_VERSION
|
||||
ARG MINIFI_C2_BINARY_NAME
|
||||
ARG MINIFI_C2_BINARY
|
||||
|
||||
ENV MINIFI_C2_USER c2
|
||||
ENV MINIFI_C2_BASE_DIR /opt/minifi-c2
|
||||
ENV MINIFI_C2_BINARY_NAME minifi-c2-${MINIFI_C2_VERSION}-bin.zip
|
||||
ENV MINIFI_C2_HOME ${MINIFI_C2_BASE_DIR}/minifi-c2-current
|
||||
|
||||
RUN mkdir -p ${MINIFI_C2_BASE_DIR}
|
||||
@ -39,12 +41,28 @@ RUN apt-get update \
|
||||
&& rm -rf /var/lib/apt/lists/* /tmp/* /var/tmp/* \
|
||||
&& unzip ${MINIFI_C2_BASE_DIR}/${MINIFI_C2_BINARY_NAME} -d ${MINIFI_C2_BASE_DIR} \
|
||||
&& rm ${MINIFI_C2_BASE_DIR}/${MINIFI_C2_BINARY_NAME} \
|
||||
&& groupadd -g ${GID} c2 \
|
||||
&& useradd --shell /bin/bash -u ${UID} -g ${GID} -m c2 \
|
||||
&& ln -s $MINIFI_C2_BASE_DIR/minifi-c2-$MINIFI_C2_VERSION $MINIFI_C2_HOME \
|
||||
&& chown -R -L c2:c2 ${MINIFI_C2_BASE_DIR}
|
||||
&& groupadd -g ${GID} ${MINIFI_C2_USER} \
|
||||
&& useradd --shell /bin/bash -u ${UID} -g ${GID} -m ${MINIFI_C2_USER} \
|
||||
&& ln -s ${MINIFI_C2_BASE_DIR}/minifi-c2-${MINIFI_C2_VERSION} ${MINIFI_C2_HOME} \
|
||||
&& chown -R -L ${MINIFI_C2_USER}:${MINIFI_C2_USER} ${MINIFI_C2_BASE_DIR}
|
||||
|
||||
USER c2
|
||||
FROM ${IMAGE_NAME}:${IMAGE_TAG}
|
||||
LABEL maintainer="Apache NiFi <dev@nifi.apache.org>"
|
||||
LABEL site="https://nifi.apache.org"
|
||||
|
||||
ARG UID
|
||||
ARG GID
|
||||
|
||||
ENV MINIFI_C2_USER c2
|
||||
ENV MINIFI_C2_BASE_DIR /opt/minifi-c2
|
||||
ENV MINIFI_C2_HOME ${MINIFI_C2_BASE_DIR}/minifi-c2-current
|
||||
|
||||
RUN groupadd -g ${GID} ${MINIFI_C2_USER} \
|
||||
&& useradd --shell /bin/bash -u ${UID} -g ${GID} -m ${MINIFI_C2_USER}
|
||||
|
||||
COPY --from=builder ${MINIFI_C2_BASE_DIR} ${MINIFI_C2_BASE_DIR}
|
||||
|
||||
USER ${MINIFI_C2_USER}
|
||||
|
||||
#Default http port
|
||||
EXPOSE 10090
|
||||
|
@ -72,6 +72,7 @@ limitations under the License.
|
||||
<UID>1000</UID>
|
||||
<GID>1000</GID>
|
||||
<MINIFI_C2_VERSION>${minifi.c2.version}</MINIFI_C2_VERSION>
|
||||
<MINIFI_C2_BINARY_NAME>minifi-c2-${minifi.c2.version}-bin.zip</MINIFI_C2_BINARY_NAME>
|
||||
<MINIFI_C2_BINARY>target/minifi-c2-${minifi.c2.version}-bin.zip</MINIFI_C2_BINARY>
|
||||
</buildArgs>
|
||||
<repository>apacheminific2</repository>
|
||||
|
@ -18,24 +18,24 @@
|
||||
|
||||
ARG IMAGE_NAME=eclipse-temurin
|
||||
ARG IMAGE_TAG=11-jre
|
||||
FROM ${IMAGE_NAME}:${IMAGE_TAG}
|
||||
LABEL maintainer="Apache NiFi <dev@nifi.apache.org>"
|
||||
LABEL site="https://nifi.apache.org"
|
||||
FROM ${IMAGE_NAME}:${IMAGE_TAG} as builder
|
||||
LABEL stage=builder
|
||||
|
||||
# Values are set by Maven
|
||||
ARG UID
|
||||
ARG GID
|
||||
ARG MINIFI_VERSION
|
||||
ARG MINIFI_BINARY_NAME
|
||||
ARG MINIFI_BINARY
|
||||
ARG MINIFI_SCRIPTS
|
||||
|
||||
ENV MINIFI_USER minifi
|
||||
ENV MINIFI_BASE_DIR /opt/minifi
|
||||
ENV MINIFI_BINARY_NAME minifi-${MINIFI_VERSION}-bin.zip
|
||||
ENV MINIFI_HOME $MINIFI_BASE_DIR/minifi-current
|
||||
ENV MINIFI_HOME ${MINIFI_BASE_DIR}/minifi-current
|
||||
|
||||
RUN mkdir -p $MINIFI_BASE_DIR
|
||||
COPY $MINIFI_BINARY $MINIFI_BASE_DIR
|
||||
ADD $MINIFI_SCRIPTS ${MINIFI_BASE_DIR}/scripts
|
||||
RUN mkdir -p ${MINIFI_BASE_DIR}
|
||||
COPY ${MINIFI_BINARY} ${MINIFI_BASE_DIR}
|
||||
ADD ${MINIFI_SCRIPTS} ${MINIFI_BASE_DIR}/scripts
|
||||
|
||||
RUN apt-get update \
|
||||
&& apt-get install -y unzip \
|
||||
@ -44,13 +44,29 @@ RUN apt-get update \
|
||||
&& rm -rf /var/lib/apt/lists/* /tmp/* /var/tmp/* \
|
||||
&& unzip ${MINIFI_BASE_DIR}/${MINIFI_BINARY_NAME} -d ${MINIFI_BASE_DIR} \
|
||||
&& rm ${MINIFI_BASE_DIR}/${MINIFI_BINARY_NAME} \
|
||||
&& groupadd -g ${GID} minifi \
|
||||
&& useradd --shell /bin/bash -u ${UID} -g ${GID} -m minifi \
|
||||
&& ln -s $MINIFI_BASE_DIR/minifi-$MINIFI_VERSION $MINIFI_HOME \
|
||||
&& chown -R -L minifi:minifi $MINIFI_BASE_DIR \
|
||||
&& groupadd -g ${GID} ${MINIFI_USER} \
|
||||
&& useradd --shell /bin/bash -u ${UID} -g ${GID} -m ${MINIFI_USER} \
|
||||
&& ln -s ${MINIFI_BASE_DIR}/minifi-${MINIFI_VERSION} ${MINIFI_HOME} \
|
||||
&& chown -R ${MINIFI_USER}:${MINIFI_USER} ${MINIFI_BASE_DIR} \
|
||||
&& chmod -R +x ${MINIFI_BASE_DIR}/scripts/*.sh
|
||||
|
||||
USER minifi
|
||||
FROM ${IMAGE_NAME}:${IMAGE_TAG}
|
||||
LABEL maintainer="Apache NiFi <dev@nifi.apache.org>"
|
||||
LABEL site="https://nifi.apache.org"
|
||||
|
||||
ARG UID
|
||||
ARG GID
|
||||
|
||||
ENV MINIFI_USER minifi
|
||||
ENV MINIFI_BASE_DIR /opt/minifi
|
||||
ENV MINIFI_HOME ${MINIFI_BASE_DIR}/minifi-current
|
||||
|
||||
RUN groupadd -g ${GID} ${MINIFI_USER} \
|
||||
&& useradd --shell /bin/bash -u ${UID} -g ${GID} -m ${MINIFI_USER}
|
||||
|
||||
COPY --from=builder ${MINIFI_BASE_DIR} ${MINIFI_BASE_DIR}
|
||||
|
||||
USER ${MINIFI_USER}
|
||||
|
||||
WORKDIR ${MINIFI_HOME}
|
||||
|
||||
|
@ -91,6 +91,7 @@ limitations under the License.
|
||||
<UID>1000</UID>
|
||||
<GID>1000</GID>
|
||||
<MINIFI_VERSION>${minifi.version}</MINIFI_VERSION>
|
||||
<MINIFI_BINARY_NAME>minifi-${minifi.version}-bin.zip</MINIFI_BINARY_NAME>
|
||||
<MINIFI_BINARY>target/minifi-${minifi.version}-bin.zip</MINIFI_BINARY>
|
||||
<MINIFI_SCRIPTS>target/sh</MINIFI_SCRIPTS>
|
||||
</buildArgs>
|
||||
|
Loading…
x
Reference in New Issue
Block a user