久久r热视频,国产午夜精品一区二区三区视频,亚洲精品自拍偷拍,欧美日韩精品二区

您的位置:首頁(yè)技術(shù)文章
文章詳情頁(yè)

Docker遇到Intellij IDEA,Java開發(fā)提升了十倍生產(chǎn)力

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

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

一、開發(fā)前準(zhǔn)備

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

2. 配置docker遠(yuǎn)程連接端口

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

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

Docker遇到Intellij IDEA,Java開發(fā)提升了十倍生產(chǎn)力

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開發(fā)提升了十倍生產(chǎn)力

6.連接遠(yuǎn)程docker

(1) 編輯配置

Docker遇到Intellij IDEA,Java開發(fā)提升了十倍生產(chǎn)力

(2) 填遠(yuǎn)程docker地址

Docker遇到Intellij IDEA,Java開發(fā)提升了十倍生產(chǎn)力

(3) 連接成功,會(huì)列出遠(yuǎn)程docker容器和鏡像

Docker遇到Intellij IDEA,Java開發(fā)提升了十倍生產(chǎn)力

二、新建項(xiàng)目

創(chuàng)建springboot項(xiàng)目

項(xiàng)目結(jié)構(gòu)圖

Docker遇到Intellij IDEA,Java開發(fā)提升了十倍生產(chǎn)力

(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目錄下創(chuàng)建docker目錄,并創(chuàng)建Dockerfile文件

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

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

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

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

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

(5) 創(chuàng)建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開發(fā)提升了十倍生產(chǎn)力

Docker遇到Intellij IDEA,Java開發(fā)提升了十倍生產(chǎn)力

命令解釋

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

Bind ports : 綁定宿主機(jī)端口到容器內(nèi)部端口。格式為[宿主機(jī)端口]:[容器內(nèi)部端口]

Bind mounts : 將宿主機(jī)目錄掛到到容器內(nèi)部目錄中。格式為[宿主機(jī)目錄]:[容器內(nèi)部目錄]

這個(gè)springboot項(xiàng)目會(huì)將日志打印在容器 /home/developer/app/logs/ 目錄下,將宿主機(jī)目錄掛載到容器內(nèi)部目錄后,那么日志就會(huì)持久化容器外部的宿主機(jī)目錄中。

(7) Maven打包

Docker遇到Intellij IDEA,Java開發(fā)提升了十倍生產(chǎn)力

(8) 運(yùn)行

Docker遇到Intellij IDEA,Java開發(fā)提升了十倍生產(chǎn)力

Docker遇到Intellij IDEA,Java開發(fā)提升了十倍生產(chǎn)力

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

(9) 運(yùn)行成功

Docker遇到Intellij IDEA,Java開發(fā)提升了十倍生產(chǎn)力

(10) 瀏覽器訪問

Docker遇到Intellij IDEA,Java開發(fā)提升了十倍生產(chǎn)力

(11) 日志查看

Docker遇到Intellij IDEA,Java開發(fā)提升了十倍生產(chǎn)力

自此通過idea 部署springboot項(xiàng)目到docker成功!難以想象,部署一個(gè)Javaweb項(xiàng)目竟然如此簡(jiǎn)單方便!

最后分享給大家相關(guān)學(xué)習(xí)教程👇:

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

IDEA教程

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

Docker遇到Intellij IDEA,Java開發(fā)提升了十倍生產(chǎn)力

到此這篇關(guān)于Docker遇到Intellij IDEA,Java開發(fā)提升了十倍生產(chǎn)力的文章就介紹到這了,更多相關(guān)Docker遇到 IDEA內(nèi)容請(qǐng)搜索好吧啦網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持好吧啦網(wǎng)!

標(biāo)簽: Java
主站蜘蛛池模板: 扬州市| 兴和县| 阜平县| 丽江市| 荔波县| 高雄市| 牙克石市| 武陟县| 弋阳县| 桑植县| 罗平县| 濮阳县| 台东县| 陆川县| 泽州县| 西乡县| 封丘县| 邵武市| 阳原县| 永泰县| 长顺县| 尚义县| 屯门区| 绩溪县| 东兴市| 军事| 通化县| 铅山县| 南昌市| 鲁山县| 通海县| 桃江县| 芜湖县| 临夏市| 东丰县| 南川市| 龙门县| 宁陵县| 大同市| 临夏县| 四子王旗|