Docker e Java

7 respostas
programaçãojava
E

Como eu crio um Dockerfile para um aplicativo desenvolvido em Java? Estou tentando criar o Dockerfile:

FROM java:8
EXPOSE 8080
ADD /target/transactions-api.app.jar transactions-api-app.jar
ENTRYPOINT ["java", "-jar", "transactions-api-app.jar"]

Mas quando eu rodo o Docker, ele roda todos os passos, mas não adiciona o arquivo jar:

Unable to find image 'transactions-api-app:latest' locally
docker: Error response from daemon: pull access denied for transactions-api-app, repository does not exist or may require 'docker login'.

Mas eu já rodei “docker images” e meu repositório aparece lá. Como eu soluciono isso? É um problema interno do Docker ou há solução?

7 Respostas

C

ola,

A mensagem de erro fala que o acesso foi negado na hora de fazer o pull do arquivo ou o diretorio nao existe ou nao tenha feito login no docker.

O caminho pro jar esta correto?
Nao deveria ser COPY ao inves de add?

E

O caminho para o jar acredito que esteja correto, mas não tenho certeza. A pasta “target” é para onde vai o jar após feito o build do projeto, não? Tentei usar com COPY e deu o mesmo problema.

C

@Erica_Okamura sim, vai para o target, mas de que local esta executando?
Visto que voce teria que estar na raiz do projeto

E

Estou executando o Docker na raiz do projeto.

C

Faça

ADD target/transactions-api.app.jar transactions-api-app.jar

A barra ali parece esta indo pra raiz da unidade.

E

@campelo.m, acredito que não seja esse o problema, pois eu alterei de diversas formas e o erro persiste.
Consegui criar o docker image, mas não consegui rodar a aplicação com o docker. Aparece o seguinte erro:

Cannot connect to the Docker daemon. Is the docker daemon running on this host?

Como eu poderia resolver este problema? Não conheço a causa do problema. Já pesquisei na internet e não descobri.

C

Ola,

Veja se essa solucao do forum docker te ajuda!

Criado 9 de novembro de 2017
Ultima resposta 13 de nov. de 2017
Respostas 7
Participantes 2