色综合图-色综合图片-色综合图片二区150p-色综合图区-玖玖国产精品视频-玖玖香蕉视频

您的位置:首頁技術文章
文章詳情頁

Docker遇到Intellij IDEA,Java開發提升了十倍生產力

瀏覽:78日期:2023-09-23 17:15:23

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

一、開發前準備

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

2. 配置docker遠程連接端口

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

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

Docker遇到Intellij IDEA,Java開發提升了十倍生產力

3. 重啟docker

systemctl daemon-reload systemctl restart docker

4.開放端口

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

5.Idea安裝docker插件,重啟

Docker遇到Intellij IDEA,Java開發提升了十倍生產力

6.連接遠程docker

(1) 編輯配置

Docker遇到Intellij IDEA,Java開發提升了十倍生產力

(2) 填遠程docker地址

Docker遇到Intellij IDEA,Java開發提升了十倍生產力

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

Docker遇到Intellij IDEA,Java開發提升了十倍生產力

二、新建項目

創建springboot項目

項目結構圖

Docker遇到Intellij IDEA,Java開發提升了十倍生產力

(1) 配置pom文件

<?xml version='1.0' encoding='UTF-8'?><project xmlns='http://maven.apache.org/POM/4.0.0' xmlns:xsi='http://www.w3.org/2001/XMLSchema-instance' xsi:schemaLocation='http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd'> <modelVersion>4.0.0</modelVersion> <parent> <groupId>com.fengqi</groupId> <artifactId>dockerDemo</artifactId> <version>1.0.0</version> <relativePath>../pom.xml</relativePath> <!-- lookup parent from repository --> </parent> <groupId>com.fengqi</groupId> <artifactId>web</artifactId> <version>1.0.0</version> <name>web</name> <description>Demo project for Spring Boot</description> <dependencies> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter</artifactId> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-test</artifactId> <scope>test</scope> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> </dependency> <dependency> <groupId>log4j</groupId> <artifactId>log4j</artifactId> <version>1.2.17</version> </dependency> </dependencies> <build> <plugins> <plugin><groupId>org.springframework.boot</groupId><artifactId>spring-boot-maven-plugin</artifactId> </plugin> <plugin><groupId>com.spotify</groupId><artifactId>docker-maven-plugin</artifactId><version>1.0.0</version><configuration> <dockerDirectory>src/main/docker</dockerDirectory> <resources> <resource> <targetPath>/</targetPath> <directory>${project.build.directory}</directory> <include>${project.build.finalName}.jar</include> </resource> </resources></configuration> </plugin> <plugin><artifactId>maven-antrun-plugin</artifactId><executions> <execution> <phase>package</phase> <configuration> <tasks><copy todir='src/main/docker' file='target/${project.artifactId}-${project.version}.${project.packaging}'></copy> </tasks> </configuration> <goals> <goal>run</goal> </goals> </execution></executions> </plugin> </plugins> </build>

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

FROM openjdk:8-jdk-alpineADD *.jar app.jarENTRYPOINT ['java','-Djava.security.egd=file:/dev/./urandom','-jar','/app.jar']

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

logging.config=classpath:logback.xmllogging.path=/home/developer/app/logs/server.port=8990

(4) 創建DockerApplication文件

@SpringBootApplicationpublic class DockerApplication { public static void main(String[] args) { SpringApplication.run(DockerApplication.class, args); }}

(5) 創建DockerController文件

@RestControllerpublic class DockerController { static Log log = LogFactory.getLog(DockerController.class); @RequestMapping('/') public String index() { log.info('Hello Docker!'); return 'Hello Docker!'; }}

(6) 增加配置

Docker遇到Intellij IDEA,Java開發提升了十倍生產力

Docker遇到Intellij IDEA,Java開發提升了十倍生產力

命令解釋

Image tag : 指定鏡像名稱和tag,鏡像名稱為 docker-demo,tag為1.1

Bind ports : 綁定宿主機端口到容器內部端口。格式為[宿主機端口]:[容器內部端口]

Bind mounts : 將宿主機目錄掛到到容器內部目錄中。格式為[宿主機目錄]:[容器內部目錄]

這個springboot項目會將日志打印在容器 /home/developer/app/logs/ 目錄下,將宿主機目錄掛載到容器內部目錄后,那么日志就會持久化容器外部的宿主機目錄中。

(7) Maven打包

Docker遇到Intellij IDEA,Java開發提升了十倍生產力

(8) 運行

Docker遇到Intellij IDEA,Java開發提升了十倍生產力

Docker遇到Intellij IDEA,Java開發提升了十倍生產力

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

(9) 運行成功

Docker遇到Intellij IDEA,Java開發提升了十倍生產力

(10) 瀏覽器訪問

Docker遇到Intellij IDEA,Java開發提升了十倍生產力

(11) 日志查看

Docker遇到Intellij IDEA,Java開發提升了十倍生產力

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

最后分享給大家相關學習教程👇:

https://www.bilibili.com/video/BV14t411z77T

IDEA教程

https://www.bilibili.com/video/BV1PZ4y1j7QK

Docker遇到Intellij IDEA,Java開發提升了十倍生產力

到此這篇關于Docker遇到Intellij IDEA,Java開發提升了十倍生產力的文章就介紹到這了,更多相關Docker遇到 IDEA內容請搜索好吧啦網以前的文章或繼續瀏覽下面的相關文章希望大家以后多多支持好吧啦網!

標簽: Java
主站蜘蛛池模板: gogo999亚洲肉体艺术大胆 | 亚洲精品aaa | 手机在线看福利 | 午夜成年女人毛片免费观看 | 性欧美精品| 最新亚洲一区二区三区四区 | 中国二级毛片 | 伊人久久大香线焦在观看 | 性xxxx奶大欧美高清 | 亚洲一区二区成人 | 免费一级肉体全黄毛片高清 | 综合久久一区二区三区 | 久久久一本精品99久久精品66 | 美女一级ba大片免色野外 | 日韩经典欧美精品一区 | 国产自制一区 | 欧美成人精品第一区 | 午夜精品久视频在线观看 | 国产精品手机在线观看 | 最新欧美精品一区二区三区不卡 | 日韩欧美在线精品 | 国产亚洲人成a在线v网站 | 亚洲一区二区三区高清网 | 中文字幕亚洲视频 | 韩国毛片 | 91成人午夜性a一级毛片 | 亚洲免费一 | 午夜影院黄色片 | 日韩高清一区二区 | 欧美日韩亚洲一区二区三区 | 中国一级性生活片 | 成人免费观看www在线 | 久久夜视频| 九九99靖品| 美女18一级毛片免费看 | 精品中文字幕久久久久久 | 国产免费一区二区三区在线 | 美国毛片一级 | 美女张开腿让人捅 | 怡红院成人在线 | 国内精品久久久久不卡 |