Criação de imagem docker no estilo tolo (espelho do aplicativo Java)

objetivos

  • Empacote um projeto da web java em uma imagem espelhada e execute-o no docker

Ambiente necessário:

  • Em primeiro lugar, você precisa ter um projeto Java da web executável, digitá-lo em um pacote jar ou um pacote war (eu uso springboot, com tomcat, caso contrário, você precisa de uma versão linux do tomcat)
  • Possui ambiente Linux (máquina virtual vmware, Virtual Box),
    • Este ambiente deve ter docker instalado,
    • Como instalar o docker
    • Como evitar a necessidade do sudo toda vez que você executar o docker após a instalação,
    • Por favor, Baidu sozinho.
  • Existe uma versão Linux do jdk, por exemplo: jdk-8u231-linux-x64.tar.gz
  • Um arquivo docker (veja abaixo como fazer dockerfile)

Passos gerais:

  • Crie uma nova pasta no ambiente linux (eu uso ubuntu, mkdir ljtest) e coloque os materiais acima nela (pacote jdk tar, pacote jar do projeto, arquivo docker)
  • Produção: docker build -t myappname. ( . Não se esqueça)
  • Verifique: imagens do docker (verifique se há um espelho como myappname)
  • Executar: docker run -it myappname

Como fazer um dockerfile:

#基于centos镜像
FROM centos

#工作目录
WORKDIR /home/lj

#维护人的信息
MAINTAINER  ljfirst <ljfirst@mail.ustc.edu.cn>

#install jdk and  jar包(需要确保你的centos镜像中有/usr/java/这个路径,不行就mkdir)
ADD jdk-8u231-linux-x64.tar.gz /usr/java/
ADD monitoringalarm-0.0.1-SNAPSHOT.jar /home/lj/

#jdk enviroment
ENV JAVA_HOME=/usr/java/jdk1.8.0_231
ENV JRE_HOME=/usr/java/jdk1.8.0_231/jre
ENV CLASSPATH=$JAVA_HOME/lib:$JAVA_HOME/jre/lib
ENV PATH=$JAVA_HOME/bin:$PATH

#设置端口
EXPOSE 8080

#执行命令
CMD ["java","-jar","/home/lj/monitoringalarm-0.0.1-SNAPSHOT.jar"]

Registro de atropelamento:

  • ADD monitoringalarm-0.0.1-SNAPSHOT.jar / home / lj / Nesta etapa, usei COPY e, a seguir, relatei vários erros de caminho e, em seguida, devo voltar e usar ADD, para poder copiar os arquivos do diretório atual.

Acho que você gosta

Origin blog.csdn.net/ljfirst/article/details/105680421
Recomendado
Clasificación