第一步:首先需要排除springboot自带的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>
第二步:为使本地启动tomcat服务正常,需添加以下依赖
<dependency>
<groupId>org.apache.tomcat.embed</groupId>
<artifactId>tomcat-embed-jasper</artifactId>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>javax.servlet-api</artifactId>
<scope>provided</scope>
</dependency>
第三步:添加打包方式以及打包插件
<packaging>war</packaging>
<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
</plugin>
</plugins>
</build>
第四步:修改springboot启动类
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.boot.builder.SpringApplicationBuilder;
import org.springframework.boot.web.servlet.support.SpringBootServletInitializer;
@SpringBootApplication
public class CultureTravelSystemApplication extends SpringBootServletInitializer {
@Override
protected SpringApplicationBuilder configure(SpringApplicationBuilder application) {
return application.sources(CultureTravelSystemApplication.class);
}
public static void main(String[] args) {
SpringApplication.run(CultureTravelSystemApplication.class, args);
}
}
第五步:执行 mvn install,将springboot项目文件打包为 *.war
第六步:在 target 目录下找到生成的 war 包(我这里已经提前将该war包重命名)
第七步:进入云服务器终端并执行以下指令
docker run -d -p 80:8080 --name cv_system -v cv_server:/usr/local/tomcat/webapps tomcat:9
第八步:将之前生成的 war 包导入对应的挂载目录下即可
之后便可以对该项目服务进行正常访问,注意我这里的 base URL 为 http://xxxxx/cv