idea如何整合docker快速部署springboot应用

技术idea如何整合docker快速部署springboot应用小编给大家分享一下idea如何整合docker快速部署springboot应用,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这

边肖告诉你idea如何集成docker来快速部署springboot应用程序。相信大部分人都不太了解。因此,分享这篇文章供大家参考。希望你看完这篇文章后收获多多。让我们一起来看看。

一、前言

集装箱化对每个人来说都不陌生。当我们听到它时,我们可能会想到码头工人、k8s、詹金斯、牧场主等等。所以今天,我将讨论idea如何使用docker来快速部署springboot应用程序。

二、环境及工具

window 10(开发)。

Centos 7.6(部署)

想法

码头工人

xshell

00-1010在线安装docker有很多步骤,所以我们在这里再说一遍:

先更新一波。

sudo yum更新

安装最新的码头工人。

yum安装docker -y

idea如何整合docker快速部署springboot应用

开始码头工人。

系统ctl启动docker

使用docker镜像查看镜像状态,如下图所示,表示引导成功(目前没有镜像)。

idea如何整合docker快速部署springboot应用

如果如下图所示,则表示启动失败。

idea如何整合docker快速部署springboot应用

打开docker远程连接。

编辑docker.service文件。

vim/lib/systemd/system/docker . service

打开后,内容如下:

idea如何整合docker快速部署springboot应用

在绿色光标行中添加以下内容:

#centos7及以上。

exec start=/usr/bin/dockerd-Htcp ://0 . 0 . 0 . 0:2375-Hunix ://var/run/docker . sock

#低于centos 7。

exec start=/usr/bin/dockerd-HFD ://-htcp ://0 . 0 . 0 . 0:2375这里,我用的是其他端口,比如12377。修改后,内容如下图所示:

idea如何整合docker快速部署springboot应用

保存后,重新加载配置文件并重新启动docker:

systemctldaemon-reload

Systemctlrestartdocker执行lsof -i:12377,以检查端口12377是否受到监控。

idea如何整合docker快速部署springboot应用

如果使用云服务器,需要打开12377防火墙规则。如果您使用默认的2375端口,如果您只使用虚拟机或内部网也没关系。如果你接触了公网,估计第二天就会发现你的cpu满了,安装了大量的马和挖矿程序。有时间的同学可以进一步配置安全配置。你可以自己在这里搜索。

00-1010安装插件。

s://cache.yisu.com/upload/information/20211027/112/152216.png" alt="idea如何整合docker快速部署springboot应用">

配置连接
安装完毕后,找到setting中如下图位置

idea如何整合docker快速部署springboot应用

在TCP socket配置你的docker地址,格式如下:
tcp://ip:12377,填写完后,稍等一小会儿,下边会进行连接测试,连接成功后会如上图显示连接成功。 五、springboot项目配置docker pom配置
博主当前项目打包方式是jar包,pom中properties配置如下

<properties>
    <!--properties节点中设置docker镜像的前缀“springboot”-->
    <docker.image.prefix>springboot</docker.image.prefix>
</properties>

build中配置如下:

 <build>
        <finalName>docker-demo</finalName>
        <plugins>
            <plugin>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-maven-plugin</artifactId>
                <version>${spring-boot.version}</version>
            </plugin>
            <plugin>
                <!-- docker-maven插件-->
                <groupId>com.spotify</groupId>
                <artifactId>docker-maven-plugin</artifactId>
                <version>1.0.0</version>
                <configuration>
                    <dockerHost>http://ip:12377</dockerHost>
                    <imageName>${docker.image.prefix}/${project.artifactId}</imageName>
                    <dockerDirectory>src/main/docker</dockerDirectory>
                    <resources>
                        <resource>
                            <targetPath>/</targetPath>
                            <directory>${project.build.directory}</directory>
                            <include>${project.build.finalName}.jar</include>
                        </resource>
                    </resources>
                </configuration>
            </plugin>
        </plugins>
    </build>

resources是为了找到打好的jar,dockerDirectory是为了找到项目中配置的Dockerfile,imageName则是镜像名称

创建Dockerfile(注意Dockerfile不是驼峰命名)
结构如下图所示

idea如何整合docker快速部署springboot应用

Dockerfile文件内容:

FROM williamyeh/java8 # 源可以使用 docker search java8搜索得到的第一个源
VOLUME /tmp
ADD docker-demo.jar /app/docker-demo.jar
#COPY target/demo-0.0.1-SNAPSHOT.jar app.jar
ENTRYPOINT ["java", "-jar", "/app/docker-demo.jar"]

FROM :指定基础镜像,必须为第一个命令
VOLUME : 用于指定持久化目录
ADD : 将本地文件添加到容器中,tar类型文件会自动解压(网络压缩资源不会被解压),可以访问网络资源,类似wget
ENTRYPOINT : 配置容器,使其可执行化

其余指令可以自行搜索

  • 到此为止,需要的配置已经完成,接下来开始运行

  • 找到idea右侧的maven窗口,执行clean

idea如何整合docker快速部署springboot应用

clean完毕后再执行package进行打包

idea如何整合docker快速部署springboot应用

然后执行如图所示的docker:build

idea如何整合docker快速部署springboot应用

在这个过程中会在target目录下创建docker文件夹,并把Dockerfile文件和生成的jar包拷贝下来,然后根据Dockerfile中的配置拉取基础镜像,传送jar到服务器指定位置,再进行镜像制作。BUILD SUCCESS后点击idea底部的Services

idea如何整合docker快速部署springboot应用

窗口如下

idea如何整合docker快速部署springboot应用

双击Docker进行连接,连接成功后我们能够看到镜像和容器运行状况:

idea如何整合docker快速部署springboot应用

然后就可以右击springboot/**:latest镜像创建容器

idea如何整合docker快速部署springboot应用

弹出create选项,进行创建配置

idea如何整合docker快速部署springboot应用

在里面配置容器名称以及运行选项,最后点击run运行容器。在Services窗口中我们能够看到容器的运行日志:

idea如何整合docker快速部署springboot应用

以上是“idea如何整合docker快速部署springboot应用”这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注行业资讯频道!

内容来源网络,如有侵权,联系删除,本文地址:https://www.230890.com/zhan/59854.html

(0)

相关推荐

  • 调表不调账,财务)

    技术调表不调账,财务) 调表不调账(财务)账里的数字一定要在报表中有所体现,报表中的数字却不一定要跟账完全一致,听起来不可思议,其实是有道理的,主要原因是两者的功能不完全一样。
    财务报表是编制给管理层和

    礼包 2021年12月6日
  • 如何进行CM部署客户端配置失败异常的分析

    技术如何进行CM部署客户端配置失败异常的分析如何进行CM部署客户端配置失败异常的分析,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。温馨提示:如果使用电脑

    攻略 2021年11月18日
  • C语言中字符串反转怎么实现

    技术C语言中字符串反转怎么实现这篇文章主要介绍C语言中字符串反转怎么实现,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!代码实现#include
    #include <string

    攻略 2021年11月11日
  • 拓端tecdat|R语言平滑算法LOESS局部加权回归、三次样条、变化点检测拟合电视节目《白宫风云》在线收视率

    技术拓端tecdat|R语言平滑算法LOESS局部加权回归、三次样条、变化点检测拟合电视节目《白宫风云》在线收视率 拓端tecdat|R语言平滑算法LOESS局部加权回归、三次样条、变化点检测拟合电视节

    礼包 2021年10月28日
  • java如何使用java swing(swing 怎么启动一个后台线程)

    技术如何解析Swing线程的内容这篇文章将为大家详细讲解有关如何解析Swing线程的内容,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。一. 事件1.事件来源:本地系统,应

    攻略 2021年12月18日
  • oraclenumber型深度解析(oracle逻辑读是读哪里的数据)

    技术怎样浅析Oracle的物理读 逻辑读 一致性读 当前模式读怎样浅析Oracle的物理读 逻辑读 一致性读 当前模式读,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简

    攻略 2021年12月20日