Meu Dockerfile não é capaz de acesso a arquivo JAR

ZeSampaio:

Eu sou realmente um novato em Java e Docker, por isso, ir fácil sobre mim. Eu estou tentando construir duas microservices que se comunicam e executá-los no docker compose, mas ele retorna este erro:

Não é possível acessar arquivo jar Olá-consumer-Microservice-mensagem-1.0-SNAPSHOT.jar.

Aqui está a minha dockerfile:

FROM alpine-jdk:base
WORKDIR ./files
EXPOSE 8081
CMD ["java", "-jar", "hello-consumer-microservice-message-1.0-SNAPSHOT.jar"]

Eu tentei alternando a CMDcom ENTRYPOINT, mas não obtiveram sucesso, por isso, poderia alguém me ajuda?

PS: Se você tem qualquer bom lê sobre esses assuntos, você pode ligá-los nas respostas também, eu realmente quero melhorar minhas habilidades!

Markoorn:

Você pode usar tanto COPYou ADDpara incluir arquivos em uma imagem - para mais detalhes ver: https://medium.freecodecamp.org/dockerfile-copy-vs-add-key-differences-and-best-practices-9570c4592e9e

No seu caso, você pode simplesmente adicionar a linha ADD hello-consumer-microservice-message-1.0-SNAPSHOT.jar app.jar

e depois mudar a sua CMDa:

CMD ["java", "-jar", "app.jar"]

Eu ADDed o frasco com o nome app.jarpara melhor legibilidade.

Portanto, o seu último Dockerfile será parecido com este:

FROM alpine-jdk:base
WORKDIR ./files
EXPOSE 8081
ADD hello-consumer-microservice-message-1.0-SNAPSHOT.jar app.jar
CMD ["java", "-jar", "app.jar"]

Acho que você gosta

Origin http://43.154.161.224:23101/article/api/json?id=217724&siteId=1
Recomendado
Clasificación