天天看點

SpringBoot Docker遠端釋出

SpringBoot Docker遠端釋出

docker遠端釋出有2種方法一種是直接利用mevan的docker插件配置釋出參數,另一種是使用Dockerfile檔案釋出
  1. 方式一:插件配置釋出
    • maven配置
      <plugin>
          <groupId>com.spotify</groupId>
          <artifactId>docker-maven-plugin</artifactId>
          <version>1.0.0</version>
          <configuration>
              <dockerHost>http://***.***.***.***:2375</dockerHost>
              <imageName>${project.name}:${project.version}</imageName>
              <workdir>/ysw/app</workdir>
              <volumes>/ysw/app</volumes>
              <baseImage>java:8</baseImage>
              <entryPoint>["java", "-jar", "/ysw/app/${project.build.finalName}.jar"]</entryPoint>
              <resources>
                  <resource>
                      <targetPath>/</targetPath>
                      <directory>${project.build.directory}</directory>
                      <include>${project.build.finalName}.jar</include>
                  </resource>
              </resources>
          </configuration>
      </plugin>           
    • maven指令釋出:

      clean package docker:build

      SpringBoot Docker遠端釋出
  2. 方式二:Dockerfile建構
    • maven插件配置
      <plugin>
          <groupId>com.spotify</groupId>
          <artifactId>docker-maven-plugin</artifactId>
          <version>1.0.0</version>
          <configuration>
              <dockerHost>http://***.***.***.***:2375</dockerHost>
              <imageName>${project.name}:${project.version}</imageName>
              <dockerDirectory>src/main/docker</dockerDirectory>
              <resources>
                  <resource>
                      <targetPath>/</targetPath>
                      <directory>${project.build.directory}</directory>
                      <include>${project.build.finalName}.jar</include>
                  </resource>
              </resources>
          </configuration>
      </plugin>           
    • Dockerfile内容
      FROM         java:8
      #FROM        tomcat:8
      # 環境變量
      ENV APP     app-0.0.1-SNAPSHOT.jar
      
      WORKDIR     /ysw/app
      VOLUME         /ysw/app
      ADD            $APP /ysw/app/app.jar
      ENTRYPOINT     ["java", "-jar", "/ysw/app/app.jar"]
      EXPOSE         8080           
    • Dockerfile位置
      SpringBoot Docker遠端釋出
    • clean package docker:build

      SpringBoot Docker遠端釋出