docker eclipse打包_如何利用IDEA一键部署Spring Boot到Docker?

本文介绍了如何使用IntelliJ IDEA(Idea)配合Docker进行Spring Boot应用的打包和部署。首先详细讲解了Docker的安装、远程连接端口配置及重启步骤,接着阐述了在Idea中安装相关插件并连接远程Docker的过程。最后,通过指定镜像名称和tag,以及绑定端口和挂载目录的方式,实现项目部署。
摘要由CSDN通过智能技术生成

点击蓝色“Java面试那些事儿”关注我哟

加个“星标”,优质文章,第一时间送达

196dff612abe080a507ca5e4602b0022.png 作者: 陶章好   来源: https://dwz.cn/BpU30ar5 IDEA是Java开发利器,Spring Boot是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,如下图所示 4bec2d46de6c8a7417e1745554a8b53d.png

3、重启docker

systemctl daemon-reload systemctl start docker

4、开放端口

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

5、Idea安装插件,重启

69fbe56615bbdb570270ff1d01db421b.png

6、连接远程docker

编辑配置 d0323a89510a0d263108c3a8e2ee9b73.png 填远程docker地址 44fc36afc72b30808b8c30ec381b2b79.png 连接成功,会列出远程docker容器和镜像 9537313e03923b8031abc6aaa7fd2078.png

# 新建项目

创建Spring Boot项目

项目结构图

21e478cf9627382929f9d4e0ae3bb3f5.png 1、配置pom文件
<?xml version="1.0" encoding="UTF-8"?>xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">4.0.0docker-democom.demo1.0-SNAPSHOTorg.springframework.bootspring-boot-starter-parent2.0.2.RELEASEUTF-8UTF-8com.demo1.8org.springframework.bootspring-boot-maven-plugincom.spotifydocker-maven-plugin1.0.0src/main/docker/${project.build.directory}${project.build.finalName}.jarmaven-antrun-pluginpackagerunorg.springframework.bootspring-boot-starter-weborg.springframework.bootspring-boot-starter-testtestlog4jlog4j1.2.17
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、增加配置 30bd11cd8153f54c3b3c81c6c0efffc7.png a833cf198e46cf31e7095752645582a1.png 793c3dff830a85bfe06cd30e1729458b.png 命令解释:
  • Image tag : 指定镜像名称和tag,镜像名称为 docker-demo,tag为1.1
  • Bind ports : 绑定宿主机端口到容器内部端口。格式为[宿主机端口]:[容器内部端口]
  • Bind mounts : 将宿主机目录挂到到容器内部目录中。格式为[宿主机目录]:[容器内部目录]。这个springboot项目会将日志打印在容器 /home/developer/app/logs/ 目录下,将宿主机目录挂载到容器内部目录后,那么日志就会持久化容器外部的宿主机目录中。
7、Maven打包 e2148c1a67dc9cc70291bebd0bd8d828.png 8、运行 1c08517582e5f98447ae0f8783b3af51.png 95430e67b3e311ca133c152f4fb87d4f.png 先pull基础镜像,然后再打包镜像,并将镜像部署到远程docker运行 bc8dfd6a10f02f358f69eb328512d6bd.png 这里我们可以看到镜像名称为docker-demo:1.1,docker容器为docker-server。 9、运行成功 c46c6d4edc6bda3ed4ecc878277b76cd.png 10、浏览器访问 67261e286ac203d857798e845599c1d3.png 11、日志查看 398e397d9e151ec264a42c1b445929cb.png 自此,通过IDEA 部署 Spring Boot 项目到Docker成功! 难以想象,部署一个Javaweb项目竟然如此简单方便!
热文推荐IDEA自动补全功能,是怎么配置的?用这种方式学习JDK 13新特性,真easy...为什么这么多人说 IDEA 比 Eclipse 更好?
同时,分享一份Java面试资料给大家,覆盖了算法题目、常见面试题、JVM、锁、高并发、反射、Spring原理、微服务、Zookeeper、数据库、数据结构等等。 获取方式:点“在看”,关注公众号并回复 面试 领取。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值