釋出SpringBoot專案到Docker容器
阿新 • • 發佈:2020-07-23
1、新建SpringBoot專案,這裡只選擇一個Web依賴
2、修改pom.xml
<build> <plugins> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-compiler-plugin</artifactId> <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>//如果沒有需要加上,不然打出來的jar會很小,執行報錯,沒有主清單。。 <executions> <execution> <goals> <goal>repackage</goal> </goals> </execution> </executions> </plugin> </plugins> </build>
3、新增一個controller,
@RestController public class HelloController { @GetMapping("/hello") public String hello() { return "hello"; } @GetMapping("/") public String index() { return "hello,index"; } }
4、點選idea右側的maven-->Lifecycle中的package ,或者直接在idea底部控制檯Terminal中執行命令mvn package
5、可以在專案的target目錄下看到生成的jar。可以執行jave -jar xxx.jar測試看下。
6、在專案根目錄下新建檔案Dockerfile,內容如下:
FROM java:8 COPY *.jar /app.jar CMD ["----server port :8080----"] EXPOSE 8080 ENTRYPOINT ["java","-jar","/app.jar"]
7、使用附件上傳工具(SSH或Xftp)把生成的jar和編寫的Dockerfile檔案上傳至linux伺服器自定義的路徑下。
8、執行構建命令
docker build -t helloweb .
9、docker images檢視構建成功的映象。
10、docker run -d -p 8080:8080 --name myweb helloweb
11、測試執行是否正常。 curl localhost:8080。