Запустите minifi-0.5.0 на базовом образе jdk17.JAVA

Программисты JAVA общаются здесь
Ответить
Anonymous
 Запустите minifi-0.5.0 на базовом образе jdk17.

Сообщение Anonymous »

мы используем openjdk:8-jre в Dockerfile в качестве базового образа для создания мини-контейнерного образа для запуска нашего мини-приложения.
Вот как выглядит мой Dockerfile: -

Код: Выделить всё

FROM openjdk:8-jre
MAINTAINER Apache MiNiFi 

ARG UID=1000
ARG GID=1000
ARG MINIFI_VERSION=0.5.0

ENV MINIFI_BASE_DIR /opt/minifi
ENV MINIFI_HOME $MINIFI_BASE_DIR/minifi-$MINIFI_VERSION
ENV MINIFI_BINARY_URL https://archive.apache.org/dist/nifi/minifi/$MINIFI_VERSION/minifi-$MINIFI_VERSION-bin.tar.gz

# Setup MiNiFi user
RUN groupadd -g $GID minifi || groupmod -n minifi `getent group $GID | cut -d: -f1`
RUN useradd --shell /bin/bash -u ${UID} -g ${GID} -m minifi

RUN mkdir -p $MINIFI_HOME

ADD sh/ ${MINIFI_BASE_DIR}/scripts/
RUN /bin/bash -c 'ls -la ${MINIFI_BASE_DIR}/scripts/; chmod +x ${MINIFI_BASE_DIR}/scripts/start.sh; ls -la ${MINIFI_BASE_DIR}/scripts/'

# Download, validate, and expand Apache MiNiFi binary.
RUN curl -fSL $MINIFI_BINARY_URL -o $MINIFI_BASE_DIR/minifi-$MINIFI_VERSION-bin.tar.gz \
&& echo "$(curl $MINIFI_BINARY_URL.sha256) *$MINIFI_BASE_DIR/minifi-$MINIFI_VERSION-bin.tar.gz" | sha256sum -c - \
&& tar -xvzf $MINIFI_BASE_DIR/minifi-$MINIFI_VERSION-bin.tar.gz -C $MINIFI_BASE_DIR \
&&  rm $MINIFI_BASE_DIR/minifi-$MINIFI_VERSION-bin.tar.gz

RUN chown -R minifi:minifi $MINIFI_HOME
USER minifi

# Startup MiNiFi
CMD ${MINIFI_BASE_DIR}/scripts/start.sh
Поскольку 8-jre имеет уязвимости, мы пытаемся изменить базовый образ jdk на openjdk:17-jdk (поэтому вместо FROM openjdk:8-jre используйте openjdk:17-jdk) но при запуске контейнера возникает следующая ошибка Java...

Код: Выделить всё

MiNiFi running with PID 8.
tail: cannot open '/opt/minifi/minifi-0.5.0/logs/minifi-app.log' for reading: No such file or directory

Bootstrap Classpath: /opt/minifi/minifi-0.5.0/conf:/opt/minifi/minifi-0.5.0/lib/bootstrap/*:/opt/minifi/minifi-0.5.0/lib/*
Java home: /usr/java/openjdk-17
MiNiFi home: /opt/minifi/minifi-0.5.0

Bootstrap Config File: /opt/minifi/minifi-0.5.0/conf/bootstrap.conf

2024-06-27 12:01:32,735 INFO [main] org.apache.nifi.minifi.bootstrap.Command Starting Apache MiNiFi...
2024-06-27 12:01:32,738 INFO [main] org.apache.nifi.minifi.bootstrap.Command Working Directory: /opt/minifi/minifi-0.5.0
2024-06-27 12:01:32,741 INFO [main] org.apache.nifi.minifi.bootstrap.Command Command:  / u s r / j a v a / o p e n j d k - 1 7 / b i n / j a v a   - c l a s s p a t h   / o p t / m i n i f i / m i n i f i - 0 . 5 . 0 / . / c o n f : / o p t / m i n i f i / m i n i f i - 0 . 5 . 0 / . / l i b / n i f i - e x p r e s s i o n - l a n g u a g e - 1 . 7 . 0 . j a r : / o p t / m i n i f i / m i n i f i - 0 . 5 . 0 / . / l i b / j a v a x . s e r v l e t - a p i - 3 . 1 . 0 . j a r : / o p t / m i n i f i / m i n i f i - 0 . 5 . 0 / . / l i b / n i f i - p r o p e r t i e s - l o a d e r - 1 . 7 . 0 . j a r : / o p t / m i n i f i / m i n i f i - 0 . 5 . 0 / . / l i b / a c c e s s o r s - s m a r t - 1 . 2 . j a r : / o p t / m i n i f i / m i n i f i - 0 . 5 . 0 / . / l i b / j e t t y - j s p - j d t - 2 . 3 . 3 . j a r : / o p t / m i n i f i / m i n i f i - 0 . 5 . 0 / . / l i b / g u a v a - 1 8 . 0 . j a r : / o p t / m i n i f i / m i n i f i - 0 . 5 . 0 / . / l i b / n e t t y - 3 . 7 . 0 . F i n a l . j a r : / o p t / m i n i f i / m i n i f i - 0 . 5 . 0 / . / l i b / a p a c h e - j s p - 8 . 0 . 3 3 . j a r : / o p t / m i n i f i / m i n i f i - 0 . 5 . 0 / . / l i b / j a c k s o n - a n n o t a t i o n s - 2 . 9 . 0 . j a r : / o p t / m i n i f i / m i n i f i - 0 . 5 . 0 / . / l i b / j a v a x . a n n o t a t i o n - a p i - 1 . 2 . j a r : / o p t / m i n i f i / m i n i f i - 0 . 5 . 0 / . / l i b / n i f i - r e g i s t r y - c l i e n t - 0 . 2 . 0 . j a r : / o p t / m i n i f i / m i n i f i - 0 . 5 . 0 / . / l i b / n i f i - w r i t e - a h e a d - l o g - 1 . 7 . 0 . j a r : / o p t / m i n i f i / m i n i f i - 0 . 5 . 0 / . / l i b / n i f i - c l i e n t - d t o - 1 . 7 . 0 . j a r : / o p t / m i n i f i / m i n i f i - 0 . 5 . 0 / . / l i b / n i f i - r e g i s t r y - f l o w - d i f f - 0 . 2 . 0 . j a r : / o p t / m i n i f i / m i n i f i - 0 . 5 . 0 / . / l i b / j a v a x . s e r v l e t . j s p . j s t l - a p i - 1 . 2 . 1 . j a r : / o p t / m i n i f i / m i n i f i - 0 . 5 . 0 / . / l i b / b c p k i x - j d k 1 5 o n - 1 . 5 5 . j a r : / o p t / m i n i f i / m i n i f i - 0 . 5 . 0 / . / l i b / n i f i - u t i l s - 1 . 7 . 0 . j a r : / o p t / m i n i f i / m i n i f i - 0 . 5 . 0 / . / l i b / j a c k s o n - m o d u l e - j a x b - a n n o t a t i o n s - 2 . 8 . 4 . j a r : / o p t / m i n i f i / m i n i f i - 0 . 5 . 0 / . / l i b / b c p r o v - j d k 1 5 o n - 1 . 5 5 . j a r : / o p t / m i n i f i / m i n i f i - 0 . 5 . 0 / . / l i b / j a c k s o n - m a p p e r - a s l - 1 . 9 . 1 3 . j a r : / o p t / m i n i f i / m i n i f i - 0 . 5 . 0 / . / l i b / n i f i - p r o p e r t i e s - 1 . 7 . 0 . j a r : / o p t / m i n i f i / m i n i f i - 0 . 5 . 0 / . / l i b / j e t t y - u t i l - 9 . 4 . 3 . v 2 0 1 7 0 3 1 7 . j a r : / o p t / m i n i f i / m i n i f i - 0 . 5 . 0 / . / l i b / j e t t y - h t t p - 9 . 4 . 3 . v 2 0 1 7 0 3 1 7 . j a r : / o p t / m i n i f i / m i n i f i - 0 . 5 . 0 / . / l i b / j c l - o v e r - s l f 4 j - 1 . 7 . 2 5 . j a r : / o p t / m i n i f i / m i n i f i - 0 . 5 . 0 / . / l i b / j a v a x . i n j e c t - 2 . 5 . 0 - b 4 2 . j a r : / o p t / m i n i f i / m i n i f i - 0 . 5 . 0 / . / l i b / j e t t y - s e r v e r - 9 . 4 . 3 . v 2 0 1 7 0 3 1 7 . j a r : / o p t / m i n i f i / m i n i f i - 0 . 5 . 0 / . / l i b / j l i n e - 0 . 9 . 9 4 . j a r : / o p t / m i n i f i / m i n i f i - 0 . 5 . 0 / . / l i b / m i n i f i - r u n t i m e - 0 . 5 . 0 . j a r : / o p t / m i n i f i / m i n i f i - 0 . 5 . 0 / . / l i b / n i f i - s e c u r i t y - 1 . 7 . 0 . j a r : / o p t / m i n i f i / m i n i f i - 0 . 5 . 0 / . / l i b / j e t t y - c o n t i n u a t i o n - 9 . 4 . 3 . v 2 0 1 7 0 3 1 7 . j a r : / o p t / m i n i f i / m i n i f i - 0 . 5 . 0 / . / l i b / s p r i n g - c o r e - 4 . 2 . 4 . R E L E A S E . j a r : / o p t / m i n i f i / m i n i f i - 0 . 5 . 0 / . / l i b / j e t t y - s c h e m a s - 3 . 1 . j a r : / o p t / m i n i f i / m i n i f i - 0 . 5 . 0 / . / l i b / j e t t y - s e c u r i t y - 9 . 4 . 3 . v 2 0 1 7 0 3 1 7 . j a r : / o p t / m i n i f i / m i n i f i - 0 . 5 . 0 / . / l i b / a s m - 5 . 0 . 4 . j a r : / o p t / m i n i f i / m i n i f i - 0 . 5 . 0 / . / l i b / n i f i - f r a m e w o r k - c o r e - a p i - 1 . 7 . 0 . j a r : / o p t / m i n i f i / m i n i f i - 0 . 5 . 0 / . / l i b / c o m m o n s - l o g g i n g - 1 . 2 . j a r : / o p t / m i n i f i / m i n i f i - 0 . 5 . 0 / . / l i b / n i f i - f r a m e w o r k - c l u s t e r - p r o t o c o l - 1 . 7 . 0 . j a r : / o p t / m i n i f i / m i n i f i - 0 . 5 . 0 / . / l i b / h t t p a s y n c client-4.1.1.jar:/opt/minifi/minifi-0.5.0/./lib/curator-framework-2.11.0.jar:/opt/minifi/minifi-0.5.0/./lib/nifi-logging-utils-1.7.0.jar:/opt/minifi/minifi-0.5.0/./lib/nifi-flowfile-repo-serialization-1.7.0.jar:/opt/minifi/minifi-0.5.0/./lib/quartz-2.2.1.jar:/opt/minifi/minifi-0.5.0/./lib/apache-jsp-9.3.9.v20160517.jar:/opt/minifi/minifi-0.5.0/./lib/nifi-persistent-provenance-repository-1.7.0.jar:/opt/minifi/minifi-0.5.0/./lib/javassist-3.22.0-CR2.jar:/opt/minifi/minifi-0.5.0/./lib/hk2-utils-2.5.0-b42.jar:/opt/minifi/minifi-0.5.0/./lib/lucene-analyzers-common-4.10.4.jar:/opt/minifi/minifi-0.5.0/./lib/json-smart-2.3.jar:/opt/minifi/minifi-0.5.0/./lib/curator-client-2.11.0.jar:/opt/minifi/minifi-0.5.0/./lib/validation-api-2.0.0.Final.jar:/opt/minifi/minifi-0.5.0/./lib/javax.servlet.jsp-api-2.3.1.jar:/opt/minifi/minifi-0.5.0/./lib/jetty-servlet-9.4.3.v20170317.jar:/opt/minifi/minifi-0.5.0/./lib/nifi-registry-data-model-0.2.0.jar:/opt/minifi/minifi-0.5.0/./lib/nifi-schema-utils-1.7.0.jar:/opt/minifi/minifi-0.5.0/./lib/logback-classic-1.2.3.jar:/opt/minifi/minifi-0.5.0/./lib/commons-lang3-3.4.jar:/opt/minifi/minifi-0.5.0/./lib/nifi-framework-api-1.7.0.jar:/opt/minifi/minifi-0.5.0/./lib/nifi-runtime-1.7.0.jar:/opt/minifi/minifi-0.5.0/./lib/nifi-registry-security-utils-0.2.0.jar:/opt/minifi/minifi-0.5.0/./lib/nifi-web-utils-1.7.0.jar:/opt/minifi/minifi-0.5.0/./lib/osgi-resource-locator-1.0.1.jar:/opt/minifi/minifi-0.5.0/./lib/commons-collections4-4.0.jar:/opt/minifi/minifi-0.5.0/./lib/jackson-core-2.9.1.jar:/opt/minifi/minifi-0.5.0/./lib/jetty-io-9.4.3.v20170317.jar:/opt/minifi/minifi-0.5.0/./lib/nifi-framework-nar-utils-1.7.0.jar:/opt/minifi/minifi-0.5.0/./lib/jersey-client-2.26.jar:/opt/minifi/minifi-0.5.0/./lib/httpclient-4.5.3.jar:/opt/minifi/minifi-0.5.0/./lib/zookeeper-3.4.6.jar:/opt/minifi/minifi-0.5.0/./lib/jetty-servlets-9.4.3.v20170317.jar:/opt/minifi/minifi-0.5.0/./lib/minifi-framework-core-0.5.0.jar:/opt/minifi/minifi-0.5.0/./lib/aopalliance-repackaged-2.5.0-b42.jar:/opt/minifi/minifi-0.5.0/./lib/org.eclipse.jdt.core-3.8.2.v20130121.jar:/opt/minifi/minifi-0.5.0/./lib/javax.el-api-3.0.0.jar:/opt/minifi/minifi-0.5.0/./lib/httpcore-nio-4.4.5.jar:/opt/minifi/minifi-0.5.0/./lib/logback-core-1.2.3.jar:/opt/minifi/minifi-0.5.0/./lib/nifi-framework-authorization-1.7.0.jar:/opt/minifi/minifi-0.5.0/./lib/nifi-site-to-site-1.7.0.jar:/opt/minifi/minifi-0.5.0/./lib/httpcore-4.4.4.jar:/opt/minifi/minifi-0.5.0/./lib/json-path-2.4.0.jar:/opt/minifi/minifi-0.5.0/./lib/nifi-api-1.7.0.jar:/opt/minifi/minifi-0.5.0/./lib/jetty-xml-9.4.3.v20170317.jar:/opt/minifi/minifi-0.5.0/./lib/minifi-nar-utils-0.5.0.jar:/opt/minifi/minifi-0.5.0/./lib/jetty-webapp-9.4.3.v20170317.jar:/opt/minifi/minifi-0.5.0/./lib/javax.inject-1.jar:/opt/minifi/minifi-0.5.0/./lib/jul-to-slf4j-1.7.25.jar:/opt/minifi/minifi-0.5.0/./lib/nifi-user-actions-1.7.0.jar:/opt/minifi/minifi-0.5.0/./lib/commons-io-2.5.jar:/opt/minifi/minifi-0.5.0/./lib/jackson-databind-2.9.1.jar:/opt/minifi/minifi-0.5.0/./lib/apache-el-8.0.33.jar:/opt/minifi/minifi-0.5.0/./lib/nifi-security-utils-1.7.0.jar:/opt/minifi/minifi-0.5.0/./lib/nifi-authorizer-1.7.0.jar:/opt/minifi/minifi-0.5.0/./lib/nifi-data-provenance-utils-1.7.0.jar:/opt/minifi/minifi-0.5.0/./lib/lucene-core-4.10.4.jar:/opt/minifi/minifi-0.5.0/./lib/curator-recipes-2.11.0.jar:/opt/minifi/minifi-0.5.0/./lib/javax.ws.rs-api-2.1.jar:/opt/minifi/minifi-0.5.0/./lib/jersey-common-2.26.jar:/opt/minifi/minifi-0.5.0/./lib/slf4j-api-1.7.25.jar:/opt/minifi/minifi-0.5.0/./lib/jersey-entity-filtering-2.26.jar:/opt/minifi/minifi-0.5.0/./lib/hk2-api-2.5.0-b42.jar:/opt/minifi/minifi-0.5.0/./lib/commons-codec-1.10.jar:/opt/minifi/minifi-0.5.0/./lib/jersey-media-json-jackson-2.26.jar:/opt/minifi/minifi-0.5.0/./lib/jackson-core-asl-1.9.13.jar:/opt/minifi/minifi-0.5.0/./lib/minifi-utils-0.5.0.jar:/opt/minifi/minifi-0.5.0/./lib/jersey-hk2-2.26.jar:/opt/minifi/minifi-0.5.0/./lib/nifi-repository-models-1.7.0.jar:/opt/minifi/minifi-0.5.0/./lib/nifi-site-to-site-client-1.7.0.jar:/opt/minifi/minifi-0.5.0/./lib/nifi-administration-1.7.0.jar:/opt/minifi/minifi-0.5.0/./lib/javax.servlet.jsp-2.3.2.jar:/opt/minifi/minifi-0.5.0/./lib/antlr-runtime-3.5.2.jar:/opt/minifi/minifi-0.5.0/./lib/hk2-locator-2.5.0-b42.jar:/opt/minifi/minifi-0.5.0/./lib/nifi-socket-utils-1.7.0.jar:/opt/minifi/minifi-0.5.0/./lib/javax.el-3.0.1-b10.jar:/opt/minifi/minifi-0.5.0/./lib/ecj-4.4.2.jar:/opt/minifi/minifi-0.5.0/./lib/nifi-framework-core-1.7.0.jar -Dorg.apache.jasper.compiler.disablejsr199=true -Xmx256m -Xms256m -Dsun.net.http.allowRestrictedHeaders=true -Djava.net.preferIPv4Stack=true -Djava.security.egd=file:/dev/urandom -Djava.awt.headless=true -Djava.protocol.handler.pkgs=sun.net.www.protocol -Dnifi.properties.file.path=/opt/minifi/minifi-0.5.0/./conf/nifi.properties -Dnifi.bootstrap.listen.port=35429 -Dapp=MiNiFi -Dorg.apache.nifi.minifi.bootstrap.config.log.dir=/opt/minifi/minifi-0.5.0/logs org.apache.nifi.minifi.MiNiFi
**Exception in thread "main"  java.lang.reflect.InaccessibleObjectException: Unable to make field private final int java.lang.ProcessImpl.pid accessible: module java.base does not "opens java.lang" to unnamed module @6b06aa9b**
at java.base/java.lang.reflect.AccessibleObject.checkCanSetAccessible(AccessibleObject.java:354)
at java.base/java.lang.reflect.AccessibleObject.checkCanSetAccessible(AccessibleObject.java:297)
at java.base/java.lang.reflect.Field.checkCanSetAccessible(Field.java:178)
at java.base/java.lang.reflect.Field.setAccessible(Field.java:172)
at org.apache.nifi.minifi.bootstrap.RunMiNiFi.getPid(RunMiNiFi.java:1409)
at org.apache.nifi.minifi.bootstrap.RunMiNiFi.startMiNiFi(RunMiNiFi.java:1161)
at org.apache.nifi.minifi.bootstrap.RunMiNiFi.start(RunMiNiFi.java:1204)
at org.apache.nifi.minifi.bootstrap.RunMiNiFi.main(RunMiNiFi.java:247)
tail: '/opt/minifi/minifi-0.5.0/logs/minifi-app.log' has appeared;  following new file
2024-06-27 12:01:33,184 INFO [main] org.apache.nifi.minifi.MiNiFi Launching MiNiFi...
2024-06-27 12:01:33,251 INFO [main] org.apache.nifi.BootstrapListener Started Bootstrap Listener, Listening for incoming requests on port 33783
2024-06-27 12:01:33,264 **ERROR [main] org.apache.nifi.minifi.MiNiFi Failure to launch MiNiFi due to java.net.ConnectException: Connection refused**
java.net.ConnectException: Connection refused
at java.base/sun.nio.ch.Net.connect0(Native Method)
at java.base/sun.nio.ch.Net.connect(Net.java:579)
at java.base/sun.nio.ch.Net.connect(Net.java:568)
at java.base/sun.nio.ch.NioSocketImpl.connect(NioSocketImpl.java:588)
at java.base/java.net.SocksSocketImpl.connect(SocksSocketImpl.java:327)
at java.base/java.net.Socket.connect(Socket.java:633)
at java.base/java.net.Socket.connect(Socket.java:583)
at org.apache.nifi.minifi.BootstrapListener.sendCommand(BootstrapListener.java:111)
at org.apache.nifi.minifi.BootstrapListener.start(BootstrapListener.java:86)
at org.apache.nifi.minifi.MiNiFi.(MiNiFi.java:89)
at org.apache.nifi.minifi.MiNiFi.main(MiNiFi.java:247)
2024-06-27 12:01:33,266 INFO [Thread-0] org.apache.nifi.minifi.MiNiFi Initiating shutdown of MiNiFi server...
2024-06-27 12:01:33,269 WARN [Thread-0] org.apache.nifi.minifi.MiNiFi Problem occurred ensuring MiNiFi server was properly terminated due to java.net.ConnectException: Connection refused

Received trapped signal, beginning shutdown...
Из интернет-ресурсов я узнал, что мы можем установить эти два параметра для разрешения, но может кто-нибудь помочь мне в этой части.

Код: Выделить всё

--add-opens=java.base/java.lang=ALL-UNNAMED
--add-opens=java.base/java.util=ALL-UNNAMED

Ссылка на этот обходной путь найдена в Интернете: - Модуль java.base не «открывает java.lang» (Java 17.0.4.1)
Если кто-нибудь столкнулся с этой ошибкой, и поможет настройка следующего параметра. Как именно мы можем установить его в файле docker при создании образа или в самом файле Dockerfile?
Кроме того, я попытался настроить jdk-17 на мою локальную систему и попытался запустить nifi-1.8.0, который также выдает ту же ошибку, что и выше, которая работала нормально с jre1.8.0

Подробнее здесь: https://stackoverflow.com/questions/786 ... base-image
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «JAVA»