jboss( WildFly)上運行 springboot程序

WildFly,原名 JBoss AS(JBoss Application Server) 或者 JBoss,是一套應用程序服務器,屬於開源的企業級 Java 中間件軟件,用於實現基於 SOA 架構的 Web 應用和服務。 WildFly 包含一組可獨立運行的軟件。web

WildFly採用積極的方法進行內存管理。開發基本運行時服務是爲了最大程度地減小堆分配。這些服務在重複的完整解析中使用公共的緩存索引元數據,從而減小了堆和對象的流失。模塊化類加載的使用可防止重複類和加載超出系統配置要求的類。這不只減小了基本內存開銷,並且還有助於最大程度地減小垃圾收集器的暫停。最後,管理控制檯是100%無狀態的,而且徹底由客戶端驅動。它會當即啓動,而且須要服務器上的零內存。spring

下面咱們說一下主要的實現方式和步驟:apache

1. war的依賴

須要添加war的打包方式,<packaging>war</packaging>緩存

<plugin>

  <groupId>org.apache.maven.plugins</groupId>
  <artifactId>maven-war-plugin</artifactId>
  <configuration>
      <failOnMissingWebXml>false</failOnMissingWebXml>
      <archive>
          <manifestEntries>
              <Dependencies>jdk.unsupported</Dependencies>
          </manifestEntries>
      </archive>
  </configuration>
</plugin>

2. tomcat使用WildFly提供的

須要先排除springboot web裏的tomcat,而後使用provider級別的tomcat,即wildfly裏的tomcat

<dependency>
  <groupId>org.springframework.boot</groupId>
   <artifactId>spring-boot-starter-web</artifactId>
   <exclusions>
      <exclusion>
          <groupId>org.springframework.boot</groupId>
          <artifactId>spring-boot-starter-tomcat</artifactId>
      </exclusion>
   </exclusions>
 </dependency>

<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-tomcat</artifactId>
    <scope>provided</scope>
</dependency>
  1. 定義Dockerfile文件
    Dockerfile裏,咱們使用Jboss的鏡像,它對於應用程序來講,是一個託管的環境,支持熱部署
FROM jboss/wildfly
ADD target/a-start-hot-deploy.war /opt/jboss/wildfly/standalone/deployments/demo.war

運行以後的效果以下:
1
訪問地址爲:`http://localhost:8080/demo`,其中demo爲應用程序的名稱springboot

相關文章
相關標籤/搜索