Vytvoril som nový projekt Spring Boot pomocou Eclipse a chcel som ho nasadiť na Tomcat vo forme vojnového balíka. Priamo cez nástroj IDE sa dá spustiť normálne, ako je znázornené na obrázku nižšie:
Ako zabaliť projekt Maven do vojnového balíka?
Upravte pom.xml súbor
Nájdite projektový uzol a pridajte nasledujúcu konfiguráciu:
V uzle závislostí je na spodku predstavený spring-boot-starter-tomcat, nasledovne:
Spring-boot-starter-tomcat je upravený napokiaľAby sa predišlo konfliktom s nezávislými kontajnermi Tomcat, čo znamená, že poskytnuté sa používa iba pri kompilácii a testovaní a pri balení je preč.
Alias projekt, nájdi build node a pridajkonečný názovKonfigurácia je nasledovná:
Ak ho nepridáte, názov projektu je váš artifactId-version a generovaný názov war balíka je tiež artifactId-version.war (napr. demo-1-0.0.1-SNAPSHOT.war) a názov projektu je príliš dlhý, keď k nemu prehliadač pristupuje.
Vytvorte súbor ServletInitializer, ktorý zdedí od SpringBootServletInitializer, a prepíšte metódu configure nasledovne:
Kompilácia a balenie
Zabalený pomocou príkazu maven, príkaz je nasledovný:
Z cieľového adresára si môžete pozrieť generované vojnové balíky, ako je znázornené na nasledujúcom obrázku:
Nasadenie do Docker kontajnera
Najprv vytvorte priečinok /data/webapps na hostiteľskom počítači pomocou nasledujúceho príkazu:
Začnite kontajner Tomcat nasledujúcim príkazom:
Nahraj itsvse.war do priečinka /data/webapps a pristupuj k nemu cez svoj prehliadač:http://192.168.50.227:8888/itsvse/home/test, ako je znázornené na obrázku nižšie:
(Koniec)
|