Docker eclipse-temurin throws error "/bin/sh: 1: [java,: not found"

790 Views Asked by At

I have a simple jar file that I am trying to run in a docker. Searching for Java dockers, I found recommendations for eclipse-temurin so I decided to use it. I am using docker and not docker-compose.

My Dockerfile is this:

FROM eclipse-temurin:11
LABEL MAINTAINER="[email protected]"

ENV CONFIG_DIR=/var/config
RUN mkdir -p /var/config
RUN mkdir -p /media/data
RUN mkdir -p /var/feeder
RUN mkdir -p /var/log/feeder

COPY feeder.jar /var/feeder
WORKDIR /var/feeder

CMD ["java", "-jar", "/var/feeder/feeder.jar" "--config-file" "/var/config/application.properties" "&>>" "/var/log/feeder/feeder.log"]

(I am not really sure that this "&>>" is okay).

Creation:

cd /source/feeder || exit
cp feeder.jar Dockerfile /tmp/feeder
cd /tmp/feeder
docker build -t feeder .

The image is created with no problems. I run it:

docker run -d -v /media/data:/media/data -v /var/config:/var/config -v /var/log/feeder:/var/log/feeder --name=feeder_$((RANDOM)) feeder

It stops immediately. docker ps -a gives me a container id, and when I try docker logs <container_id> I get /bin/sh: 1: [java,: not found.

Everything looks okay to me, but it still doesn't work. Any ideas?

1

There are 1 best solutions below

0
On

ENTRYPOINT ["java","-jar","docker-demo-2.jar"] commans might missed in entrypoint field between java jar and image name check that and rebuild and push again to docker and then run