上传springboot项目到远程docker

Posted glorybai

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了上传springboot项目到远程docker相关的知识,希望对你有一定的参考价值。

昨天在云服务器上配置了docker环境,正好手边有个springboot的项目。今天研究一下如何将一个springboot项目打包到docker容器,然后通过运行一个镜像来启动项目。

1.打开docker允许远程访问docker的功能

技术图片

选“E”继续

技术图片

 

添加红框内容

-H tcp://0.0.0.0:2375  -H unix:///var/run/docker.sock

技术图片

 配置完成后保存退出,然后重启docker

systemctl daemon-reload
service docker restart

2.idea上docker的准备

在网上查询资料时发现需要docker的插件,下载后才发现idea 2019 2.3 版本已经自带连接docker的功能了。版本害死人啊  配置你的docker地址后下方出现Connection successful即可。

技术图片

 

 3.配置Dockerfile文件

这个文件是镜像的构造文件

技术图片

 

 内容如下:

技术图片

 

 由于springboot运行时需要tmp目录,在文件中就配置一个/tmp目录。注意第三行改成自己target下的打包名称,将这个jar文件复制到/app.jar中,最后就是启动命令。

4.加maven插件

<plugin>
    <groupId>com.spotify</groupId>
    <artifactId>docker-maven-plugin</artifactId>
    <version>1.2.0</version>
    <executions>
        <execution>
            <id>build-image</id>
            <phase>package</phase>
            <goals>
                <goal>build</goal>
            </goals>
        </execution>
    </executions>
    <configuration>
        <dockerHost>http://服务器ip:2375</dockerHost>
        <imageName>javaboy/${project.artifactId}</imageName>
        <imageTags>
            <imageTag>${project.version}</imageTag>
        </imageTags>
        <forceTags>true</forceTags>
        <dockerDirectory>${project.basedir}</dockerDirectory>
        <resources>
            <resource>
                <targetPath>/</targetPath>
                <directory>${project.build.directory}</directory>
                <include>${project.build.finalName}.jar</include>
            </resource>
        </resources>
    </configuration>
</plugin>

 5.打包运行

技术图片

 

 打包时会构建镜像所以会慢一点但是真的很方便。idea牛批

打包成功后可以在docker容器中看到自己的项目镜像

技术图片

 

在idea的services中操作更加方便

 技术图片

 

 右击项目镜像就可以基于这个镜像创建出一个容器

技术图片

 

 技术图片

 

 bind ports可以自己配置

技术图片

 

 配置成功后点击“run”,在浏览器访问项目

技术图片

 

以上是关于上传springboot项目到远程docker的主要内容,如果未能解决你的问题,请参考以下文章

idea远程部署SpringBoot项目到Docker

IDEA快速部署Spring Boot 项目到Docker

DockerMaven打包SpringBoot项目成Docker镜像并上传到Harbor仓库(EclipseSTSIDEAMaven通用)

Intellij,Spring 开发工具远程,Docker,错误意外的 404 响应上传类文件

阿里云搭建docker私有镜像仓库与SpringBoot项目推送远程镜像仓库

windows上项目打包自动编译为docker镜像到远程linux服务器