zoukankan      html  css  js  c++  java
  • docker 打包springboot镜像并启动

    1.使用maven将项目打成一个包含所有的jar包

     

    2.pom.xml中包含即可通过mvn clean package 就可以打成可执行jar包

    <build>

    <plugins>

    <plugin>

    <groupId>org.apache.maven.plugins</groupId>

    <artifactId>maven-compiler-plugin</artifactId>

    <version>2.3.2</version>

    <configuration>

    <source>1.8</source>

    <target>1.8</target>

    <encoding>UTF-8</encoding>

    </configuration>

    </plugin>

    <plugin>

    <groupId>org.springframework.boot</groupId>

    <artifactId>spring-boot-maven-plugin</artifactId>

    <configuration>

    <fork>true</fork>

    <mainClass>com.org.Application</mainClass>

    <layout>ZIP</layout>

     

    </configuration>

    <executions>

    <execution>

    <goals>

    <goal>repackage</goal>

    </goals>

    <!-- 分离出代码包

    <configuration>

    <classifier>exec</classifier>

    </configuration>

    -->

    </execution>

    </executions>

    </plugin>

    </plugins>

    </build>

     

    3.将打成的jar包和一个DockerFile文件放入安装了docker的环境

     

     

    DockerFile内容为:

     

    #指定依赖的镜像

    FROM java:8-alpine

    #springboot tomcat挂载的目录

    VOLUME /tmp

    #容器使用端口

    EXPOSE 9002

    #添加jar包入容器

    ADD start-apply-service-1.0-SNAPSHOT.jar app.jar

    #改名

    RUN sh -c 'touch /app.jar'

    #容器启动java

    ENTRYPOINT ["java","-Djava.security.egd=file:/dev/./urandom","-jar","/app.jar"]

     

     

    ------------------------------简化版DockerFile配置-----------------------------------------

    FROM java:8-alpine

    EXPOSE 9002

    ADD start-apply-service-1.0-SNAPSHOT.jar /app.jar

    ENTRYPOINT ["java","-jar","/app.jar"]

    -------------------------------end---------------------------------------------

     

    4.执行 docker build -t springboot:2.0 . #最后的"."指的是DockerFile文件的当前路径,springboot 为镜像名,2.0为tag,build 就是构建的意思。

    5.执行上述命名 即可通过docker images 看到 我们生成的镜像

     

    6. docker run -d -p 9002:9002 springboot:2.0 #启动自定义容器

    7.docker logs --tail=200 2915c40fdcdf #查看容器启动日志

     

    8.本地尝试访问

     

     

  • 相关阅读:
    P4718 [模板]Pollard-Rho算法
    python爬虫模板
    Codeforces1248F. Catowice City
    P3980 [NOI2008]志愿者招募 (费用流)
    P2805 [NOI2009]植物大战僵尸 (拓扑排序 + 最小割)
    P3157 [CQOI2011]动态逆序对
    P2634 [国家集训队]聪聪可可 (点分治)
    HDU6703 array (线段树)
    Codeforces750E. New Year and Old Subsequence (线段树维护DP)
    Codeforces301D. Yaroslav and Divisors
  • 原文地址:https://www.cnblogs.com/keepMoveForevery/p/12205917.html
Copyright © 2011-2022 走看看