日韩无码专区无码一级三级片|91人人爱网站中日韩无码电影|厨房大战丰满熟妇|AV高清无码在线免费观看|另类AV日韩少妇熟女|中文日本大黄一级黄色片|色情在线视频免费|亚洲成人特黄a片|黄片wwwav色图欧美|欧亚乱色一区二区三区

RELATEED CONSULTING
相關咨詢
選擇下列產(chǎn)品馬上在線溝通
服務時間:8:30-17:00
你可能遇到了下面的問題
關閉右側工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營銷解決方案
當Docker遇上IDEA ,生產(chǎn)力徹底炸裂了

Idea是Java開發(fā)利器,SpringBoot是Java生態(tài)中最流行的微服務框架,docker是時下最火的容器技術,那么它們結合在一起會產(chǎn)生什么化學反應呢?

一、開發(fā)前準備

1.Docker的安裝可以參考https://docs.docker.com/install/

2.配置docker遠程連接端口

 
 
 
 
  1. vi /usr/lib/systemd/system/docker.service 

找到 ExecStart,在最后面添加 -H tcp://0.0.0.0:2375,如下圖所示:

3.重啟docker

 
 
 
 
  1. systemctl daemon-reload 
  2.  
  3. systemctl start docker 

4.開放端口

 
 
 
 
  1. firewall-cmd --zone=public --add-port=2375/tcp --permanent 

5.Idea安裝插件,重啟

6.連接遠程docker

(1) 編輯配置

(2) 填遠程docker地址

(3) 連接成功,會列出遠程docker容器和鏡像

二、新建項目

1.創(chuàng)建springboot項目

項目結構圖:

(1) 配置pom文件

 
 
 
 
  1.  
  2.  
  3.  
  4. xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
  5.  
  6. xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> 
  7.  
  8. 4.0.0 
  9.  
  10. docker-demo 
  11.  
  12. com.demo 
  13.  
  14. 1.0-SNAPSHOT 
  15.  
  16.  
  17.  
  18. org.springframework.boot 
  19.  
  20. spring-boot-starter-parent 
  21.  
  22. 2.0.2.RELEASE 
  23.  
  24.  
  25.  
  26.  
  27.  
  28.  
  29.  
  30. UTF-8 
  31.  
  32. UTF-8 
  33.  
  34. com.demo 
  35.  
  36. 1.8 
  37.  
  38.  
  39.  
  40.  
  41.  
  42.  
  43.  
  44.  
  45.  
  46. org.springframework.boot 
  47.  
  48. spring-boot-maven-plugin 
  49.  
  50.  
  51.  
  52.  
  53.  
  54. com.spotify 
  55.  
  56. docker-maven-plugin 
  57.  
  58. 1.0.0 
  59.  
  60.  
  61.  
  62. src/main/docker 
  63.  
  64.  
  65.  
  66.  
  67.  
  68. / 
  69.  
  70. ${project.build.directory} 
  71.  
  72. ${project.build.finalName}.jar 
  73.  
  74.  
  75.  
  76.  
  77.  
  78.  
  79.  
  80.  
  81.  
  82.  
  83.  
  84. maven-antrun-plugin 
  85.  
  86.  
  87.  
  88.  
  89.  
  90. package 
  91.  
  92.  
  93.  
  94.  
  95.  
  96.  
  97.  
  98.  
  99.  
  100.  
  101.  
  102.  
  103.  
  104. run 
  105.  
  106.  
  107.  
  108.  
  109.  
  110.  
  111.  
  112.  
  113.  
  114.  
  115.  
  116.  
  117.  
  118.  
  119.  
  120.  
  121.  
  122. org.springframework.boot 
  123.  
  124. spring-boot-starter-web 
  125.  
  126.  
  127.  
  128.  
  129.  
  130. org.springframework.boot 
  131.  
  132. spring-boot-starter-test 
  133.  
  134. test 
  135.  
  136.  
  137.  
  138.  
  139.  
  140. log4j 
  141.  
  142. log4j 
  143.  
  144. 1.2.17 
  145.  
  146.  
  147.  
  148.  
  149.  
  150.  

(2) 在src/main目錄下創(chuàng)建docker目錄,并創(chuàng)建Dockerfile文件

 
 
 
 
  1. FROM openjdk:8-jdk-alpine 
  2.  
  3. ADD *.jar app.jar 
  4.  
  5. ENTRYPOINT ["java","-Djava.security.egd=file:/dev/./urandom","-jar","/app.jar"] 

(3) 在resource目錄下創(chuàng)建application.properties文件

 
 
 
 
  1. logging.config=classpath:logback.xml 
  2.  
  3. logging.path=/home/developer/app/logs/ 
  4.  
  5. server.port=8990 

(4) 創(chuàng)建DockerApplication文件

 
 
 
 
  1. @SpringBootApplication 
  2.  
  3. public class DockerApplication { 
  4.  
  5. public static void main(String[] args) { 
  6.  
  7. SpringApplication.run(DockerApplication.class, args); 
  8.  
  9.  

(5) 創(chuàng)建DockerController文件

 
 
 
 
  1. @RestController 
  2.  
  3. public class DockerController { 
  4.  
  5. static Log log = LogFactory.getLog(DockerController.class); 
  6.  
  7. @RequestMapping("/") 
  8.  
  9. public String index() { 
  10.  
  11. log.info("Hello Docker!"); 
  12.  
  13. return "Hello Docker!"; 
  14.  
  15.  

(6) 增加配置

命令解釋

 
 
 
 
  1. Image tag : 指定鏡像名稱和tag,鏡像名稱為 docker-demo,tag為1.1 
  2.  
  3. Bind ports : 綁定宿主機端口到容器內(nèi)部端口。格式為[宿主機端口]:[容器內(nèi)部端口] 
  4.  
  5. Bind mounts : 將宿主機目錄掛到到容器內(nèi)部目錄中。格式為[宿主機目錄]:[容器內(nèi)部目錄]。這個springboot項目會將日志打印在容器 
  6.  
  7. /home/developer/app/logs/ 目錄下,將宿主機目錄掛載到容器內(nèi)部目錄后,那么日志就會持久化容器外部的宿主機目錄中。 

(7) Maven打包

(8) 運行

先pull基礎鏡像,然后再打包鏡像,并將鏡像部署到遠程docker運行

這里我們可以看到鏡像名稱為docker-demo:1.1,docker容器為docker-server

(9) 運行成功

(10) 瀏覽器訪問

(11) 日志查看

自此通過idea 部署springboot項目到docker成功!難以想象,部署一個Javaweb項目竟然如此簡單方便!


當前名稱:當Docker遇上IDEA ,生產(chǎn)力徹底炸裂了
文章源于:http://www.5511xx.com/article/dpcscoh.html