您好,登錄后才能下訂單哦!
這期內容當中小編將會給大家帶來有關IDEA2021.2配置docker怎樣將springboot項目打成鏡像一鍵發布部署,文章內容豐富且以專業的角度為大家分析和敘述,閱讀完這篇文章希望大家可以有所收獲。
這里再介紹如何在IDEA中配置docker,將項目部署到服務器上
idea2021激活教程
https://www.yuque.com/docs/share/b996d27e-c888-45f2-bb1e-f6db5efe2485?#
http://www.neiyidaogou.com/article/178193.htm
去插件中心安裝Docker插件,安裝完重啟IDEA。這個簡單
配置連接遠程docker,打開Docker插件,新建連接,在Engine API URL處輸入服務器IP地址:2375。出現Connection successful代表鏈接成功,否則需要看看ip端口是否是通的
新建一個springboot項目,在pom文件中docker-maven-plugin插件,直接復制
<plugin> <groupId>com.spotify</groupId> <artifactId>docker-maven-plugin</artifactId> <version>1.2.1</version> <!--將插件綁定在某個phase執行--> <executions> <execution> <id>build-image</id> <!--將插件綁定在package這個phase上,也就是說,用戶只需要執行mvn package,就會自動執行mvn docker:build--> <phase>package</phase> <goals> <goal>build</goal> </goals> </execution> </executions> <configuration> <!--指定生成的鏡像名--> <imageName>clover/${project.artifactId}</imageName> <!--指定標簽--> <imageTags> <imageTag>latest</imageTag> </imageTags> <!--指定Dockerfile 的位置,${project.basedir}:項目的根路徑下--> <dockerDirectory>${project.basedir}/src/main/resources/docker</dockerDirectory> <!--指定遠程docker api地址--> <dockerHost>http://192.168.6.215:2375</dockerHost> <resources> <resource> <!--容器中自定義jar包存放的位置,及對應的target目錄--> <targetPath>/</targetPath> <!--本地jar包所在路徑--> <directory>${project.build.directory}</directory> <!--需要包含本地jar包名稱,對應的是Dockerfile中添加的文件名--> <include>${project.build.finalName}.jar</include> </resource> </resources> <!--以下兩行是為了docker push到DockerHub使用的--> <!--<serverId>docker-hub</serverId> <registryUrl>https://index.docker.io/v1</registryUrl>--> </configuration> </plugin>
添加個url接口,方便訪問:
@SpringBootApplication(exclude={DataSourceAutoConfiguration.class, HibernateJpaAutoConfiguration.class}) @RestController public class DockerdemoApplication { public static void main(String[] args) { SpringApplication.run(DockerdemoApplication.class, args); } @RequestMapping("/test") public String test(){ return "1. Hello world ! " + new SimpleDateFormat(" [yyyy-mm-dd HH:mm:ss]").format(new Date()); } }
在項目根目錄新建Dockerfile文件
# Docker image for springboot application # VERSION 0.0.1 # Author: bolingcavalry ### 基礎鏡像,使用alpine操作系統,openjkd使用8u201 FROM openjdk:8u201-jdk-alpine3.9 #作者 MAINTAINER BolingCavalry <zq2599@gmail.com> #系統編碼 ENV LANG=C.UTF-8 LC_ALL=C.UTF-8 #聲明一個掛載點,容器內此路徑會對應宿主機的某個文件夾 VOLUME /tmp #應用構建成功后的jar文件被復制到鏡像內,名字也改成了app.jar ADD target/dockerplugindemo-0.0.1-SNAPSHOT.jar app.jar #啟動容器時的進程 ENTRYPOINT ["java","-jar","/app.jar"] #暴露8080端口 EXPOSE 8080
在IDEA新建dockerfile啟動文件
Dockerfile配置詳情如下圖所示,請按照圖中的說明進行設置,確保每個紅框中都會執行到:
上圖中最下面的那個"Run Maven Goal"點擊后,會彈出一個小窗口 ,用來輸入要執行的maven命令,這里輸入clean package -U -DskipTests,表示每次在構建鏡像之前,都會將當前工程清理掉并且重新編譯構建:
設置完成后,點擊下圖紅框中的綠色三角按鈕,執行此配置:
發布不成功可能會因為idea不是管理員權限打開的
,筆者就遇到這種情況,發布失敗,連不上服務器docker。或者防火墻,宿主機的端口沒寫對等等
在服務器上執行docker image
可以查看鏡像情況
在瀏覽器上訪問地址:http://192.168.6.215:8080/test,得到響應如下圖所示,可見應用在容器中正常運行:
如果修改了代碼,再次點擊上圖的三角形啟動,就再次發布部署了
上述就是小編為大家分享的IDEA2021.2配置docker怎樣將springboot項目打成鏡像一鍵發布部署了,如果剛好有類似的疑惑,不妨參照上述分析進行理解。如果想知道更多相關知識,歡迎關注億速云行業資訊頻道。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。