WFLYDS0012: IndexOutOfBoundsException while trying to run JBoss on Docker
wkorczynski Sep 27, 2019 9:08 AMI'm trying to run JBoss EAP 7.2 on Docker. Below is my Dockerfile:
FROM alpine ARG DATABASE_CONFIGURATION=postgres.jbossoptions.orig ARG PROXY_CONFIGURATION ENV HTTP_PROXY=${PROXY_CONFIGURATION} \ HTTPS_PROXY=${PROXY_CONFIGURATION} \ http_proxy=${PROXY_CONFIGURATION} \ https_proxy=${PROXY_CONFIGURATION} RUN apk add --no-cache openjdk8-jre bash RUN addgroup -S jboss && adduser -S jboss -G jboss WORKDIR /opt/jboss COPY jboss-eap-7.2*.zip jboss-eap-7.2.zip ENV JBOSS_HOME /opt/jboss/jboss-eap-7.2 RUN mkdir $JBOSS_HOME RUN unzip jboss-eap-7.2.zip \ && rm jboss-eap-7.2.zip COPY modules.zip . RUN unzip -o modules.zip -d $JBOSS_HOME/modules/ \ && rm modules.zip #add user admin with password Wincor#1admin RUN $JBOSS_HOME/bin/add-user.sh admin Wincor#1admin --silent COPY assembly /setup-vm/assembly COPY ${DATABASE_CONFIGURATION} /setup-vm/assembly/installjboss/jbossoptions.orig RUN chown -R jboss:jboss /setup-vm/assembly \ && chmod -R +x /setup-vm/assembly WORKDIR /setup-vm/assembly/installjboss/ RUN find ../ -type f -print0 | xargs -0 dos2unix \ && ./customize.sh jbossoptions.orig \ && rm -rf $JBOSS_HOME/standalone/configuration/standalone_xml_history/current RUN rm -rf $JBOSS_HOME/standalone/deployments/* \ && cp -rf ../application.ear $JBOSS_HOME/standalone/deployments \ && chown -R jboss:jboss $JBOSS_HOME EXPOSE 8080 9990 9999 8787 USER jboss CMD $JBOSS_HOME/bin/standalone.sh --server-config=standalone-full.xml --properties=jbossoptions.orig
I'm copying zip with JBoss to the image, copying the application and doing the customization of standalone-full.xml and running the server. Unfortunately, I'm getting the exception as below:
08:25:18,725 ERROR [org.jboss.as.server.deployment.scanner] (DeploymentScanner-threads - 1) WFLYDS0012: Scan of /opt/jboss/jboss-eap-7.2/standalone/deployments threw Exception: java.lang.IndexOutOfBoundsException at java.nio.Buffer.checkIndex(Buffer.java:546) at java.nio.HeapByteBuffer.getInt(HeapByteBuffer.java:365) at org.jboss.as.server.deployment.scanner.ZipCompletionScanner.getUnsignedInt(ZipCompletionScanner.java:399) at org.jboss.as.server.deployment.scanner.ZipCompletionScanner.validateEndRecord(ZipCompletionScanner.java:169) at org.jboss.as.server.deployment.scanner.ZipCompletionScanner.isCompleteZip(ZipCompletionScanner.java:117) at org.jboss.as.server.deployment.scanner.FileSystemDeploymentService.isZipComplete(FileSystemDeploymentService.java:1095) at org.jboss.as.server.deployment.scanner.FileSystemDeploymentService.scanDirectory(FileSystemDeploymentService.java:935) at org.jboss.as.server.deployment.scanner.FileSystemDeploymentService.scan(FileSystemDeploymentService.java:598) at org.jboss.as.server.deployment.scanner.FileSystemDeploymentService.scan(FileSystemDeploymentService.java:493) at org.jboss.as.server.deployment.scanner.FileSystemDeploymentService$DeploymentScanRunnable.run(FileSystemDeploymentService.java:255) at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511) at java.util.concurrent.FutureTask.runAndReset(FutureTask.java:308) at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$301(ScheduledThreadPoolExecutor.java:180) at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:294) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) at java.lang.Thread.run(Thread.java:748) at org.jboss.threads.JBossThread.run(JBossThread.java:485)
I tried to run the server without ear with my application and this exception didn't occur and JBoss was run. But when I try to run the server with my application on my local PC (no Docker), everything works fine. I tried many things: running as root, changing permissions to the folder, nothing helped. Does anyone have any clue?