使用Maven插件将项目部署到Docker

这篇具有很好参考价值的文章主要介绍了使用Maven插件将项目部署到Docker。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

一、开启docker远程访问

# 1、修改docker配置文件
vim /lib/systemd/system/docker.service

在ExecStart=后面加上:
-H tcp://0.0.0.0:2375 -H unix:///var/run/docker.sock

修改后的配置如下:
ExecStart=/usr/bin/dockerd -H fd:// --containerd=/run/containerd/containerd.sock -H tcp://0.0.0.0:2375 -H unix:///var/run/docker.sock

# 2、刷新配置重启服务
systemctl daemon-reload
systemctl restart docker

如图:maven docker插件,Docker,docker,maven,java

二、开放docker默认端口2375

# 开放防火墙2375端口
firewall-cmd --zone=public --add-port=2375/tcp --permanent
# 更新配置信息(这样就不需要重启防火墙了)
firewall-cmd --reload
# 查看服务器开放端口
netstat -tlun

三、idea安装docker插件连接测试

maven docker插件,Docker,docker,maven,java

四、pom文件添加maven-compiler-plugin插件

按需引入即可

<build>
    <!-- install后的jar包名称 -->
    <finalName>${project.artifactId}</finalName>
    <plugins>
        <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-compiler-plugin</artifactId>
            <configuration>
                <source>1.8</source>
                <target>1.8</target>
            </configuration>
        </plugin>
        <plugin>
            <groupId>com.spotify</groupId>
            <artifactId>docker-maven-plugin</artifactId>
            <version>1.2.2</version>
            <configuration>
                <!-- 镜像名称,相当于执行docker build -t 命令后面跟的镜像名称 -->
                <imageName>shr/${project.artifactId}</imageName>

                <!-- Dockerfile文件存放目录 -->
                <dockerDirectory>src/main/docker</dockerDirectory>

                <!-- docker远程服务器地址 -->
                <dockerHost>http://192.168.68.68:2375</dockerHost>

                <!-- 指定tag版本 -->
                <!--<imageTags>
                    <imageTag>1.0</imageTag>
                </imageTags>-->

                <!-- build 时强制覆盖 tag,配合 imageTags 使用-->
                <!--<forceTags>true</forceTags>-->

                <!-- 这里是复制 jar 包到 docker 容器指定目录配置 -->
                <resources>
                    <resource>
                        <targetPath>/</targetPath>
                        <directory>${project.build.directory}</directory>
                        <include>${project.build.finalName}.jar</include>
                    </resource>
                </resources>
            </configuration>
            <executions>
                <!-- 执行mvn install时,执行 build、tag 操作-->
                <execution>
                    <id>build-image</id>
                    <phase>install</phase>
                    <goals>
                        <goal>build</goal>
                    </goals>
                </execution>
                
                <!-- tag 用于给镜像打标签-->
                <!--<execution>
                    <id>tag-image</id>
                    <phase>package</phase>
                    <goals>
                        <goal>tag</goal>
                    </goals>
                    <configuration>
                        <image>${project.artifactId}:latest</image>
                        <newName>${project.artifactId}:${project.version}</newName>
                    </configuration>
                </execution>-->
                
                <!-- maven执行deploy时push镜像 -->
                <!--<execution>
                    <id>push-image</id>
                    <phase>deploy</phase>
                    <goals>
                        <goal>push</goal>
                    </goals>
                    <configuration>
                        <imageName>${project.artifactId}:${project.version}</imageName>
                    </configuration>
                </execution>-->
            </executions>
        </plugin>
    </plugins>
</build>

五、编写Dockerfile文件

maven docker插件,Docker,docker,maven,java
# 拉取amazoncorretto:8作为基础镜像
FROM amazoncorretto:8
# 作者
MAINTAINER orange <orangeHaven@163.com>
# 将本地文件夹挂在到当前容器
VOLUME /tmp
# 复制文件到容器
ADD shr-middle.jar shr-middle.jar
# 时区设置
ENV TZ="Asia/Shanghai"
# 声明需要暴露的端口
EXPOSE 9000
# 配置容器启动后执行的命令
ENTRYPOINT ["sh", "-c", "java -jar $PARAMS -Djava.security.egd=file:/dev/urandom -jar shr-middle.jar $JAR_PARAMS"]

六、部署镜像到容器并运行

6.1、执行install

maven docker插件,Docker,docker,maven,java

等待执行结束后,去服务器查看镜像 docker images ,可以看到已经生成好的镜像

6.2、使用自定义网络

生产环境因为不止单独一个应用,所以尽量使用自定义网络,来保证各个容器间可以通过容器名来访问,保证数据互通

docker network create orange_network

6.2、运行容器并测试

# 运行容器
docker run -d \
    -p 9000:9000 \
    --privileged=true \
    -v /data/logs:/logs \
    --restart always \
    --network orange_network \
    -e PARAMS='-Xms256m -Xmx512m' \
    -e JAR_PARAMS='--server.port=9000' \
    --name shr-middle-dev \
    shr/shr-middle

参考:https://blog.csdn.net/hengheng__/article/details/126475608文章来源地址https://www.toymoban.com/news/detail-772623.html

到了这里,关于使用Maven插件将项目部署到Docker的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Docker+Jenkins+Gitee自动化部署maven项目

    各位看官老爷,本文为Jenkins实战,注重实际过程,阅读完会有以下收获: 了解如何使用Docker安装Jenkins 了解如何使用Jenkins部署maven项目 了解如何使用Jenkins+Gitee实现自动化部署 相信,正在读这篇文章的你,对Jenkins应该有或多或少的了解,就算没有也应该在某个地方听说过。👍

    2024年02月07日
    浏览(234)
  • 【Docker】使用 Docker 部署 Maven 仓库

    在本文中,将介绍如何使用 Docker 部署一个 Maven 本地私服。Maven 私服可以帮助我们管理和共享本地的 Maven 依赖,提高开发效率。本文将使用 Sonatype Nexus 作为 Maven 私服,并使用 Docker Compose 来部署和管理容器。 在开始之前,您需要安装以下工具: Docker:用于创建、运行和管理

    2024年02月16日
    浏览(24)
  • 【Docker】11、IDEA集成Docker插件实现一键部署SpringBoot项目

    日常开发项目的过程中,我们每次需要部署线上的时候,都需要安装一大堆的运行环境,例如:JDK、MySQL、Redis 等,非常花费时间、我们可以使用 Docker 的容器技术,方便快捷地搭建项目启动所需要的运行环境,本文介绍在开发工具 Idea 中安装 Docker 插件实现一键部署 SpringBo

    2024年02月09日
    浏览(42)
  • 【Docker】使用docker-maven-plugin插件构建发布推镜像到私有仓库

    本文描述了在Spring Boot项目中通过docker-maven-plugin插件把项目推送到私有docker仓库中,随后拉取仓库中的项目用docker run运行项目。作者自行构建,质量有保证。 1、要想使用 docker-maven-plugin ,需要在 pom.xml 中添加该插件; 注:注意下db:3306 2、我们构建镜像之前需要先将项目打包

    2024年02月15日
    浏览(50)
  • Idea使用Docker插件实现maven打包自动构建镜像

    Docker 开启TCP 服务 改写以下内容 重启服务 此时docker已经开放了2375端口,使用外部主机访问 http://docker:2375/info IDEA 集成Docker 安装Docker 插件 配置docker服务地址 点击view-services,打开docker的操作面板 双击docker01可以看到此docker服务下镜像和容器 右击docker镜像,可以创建新的容器,

    2024年02月10日
    浏览(52)
  • IDEA通过Docker插件部署SpringBoot项目

    找到并编辑服务器上的docker.service文件。 在下面ExecStart替换成下面的 有以下信息输出说明配置成功 连接成功就可以在idea里面使用docker了 1、pom.xml中添加Docker插件坐标 这是为了在本项目中引入docker来管理,毕竟最后要使用docker把项目打包成一个镜像。 注意三个事情: 1.版本

    2024年02月07日
    浏览(47)
  • 使用docker-maven-plugin插件构建镜像并推送至私服Harbor

    如下所示,建议使用 Dockerfile Maven 插件,但该插件也停止维护更新了。因此先暂时使用 docker-maven-plugin 插件。 默认的dokcer是不支持远程访问的,需要加点配置,开启Docker的远程访问 确定docker配置文件位置在:/etc/systemd/system/docker.service 然后编辑修改docker配置文件: 找到包含

    2024年02月11日
    浏览(62)
  • docker部署jenkins且jenkins中使用docker去部署项目

    2.346.1是最后一个支持jdk8的 在这个目录中新增data文件夹,注意data是用来跟docker中的文件进行映射的 docker-compose.yml docker-compose up -d 安装插件,如果插件失败,在这里面去修改 https://mirrors.tuna.tsinghua.edu.cn/jenkins/updates/update-center.json jdk地址: https://repo.huaweicloud.com/java/jdk/8u202-b

    2024年02月13日
    浏览(45)
  • Docker部署(5)——使用docker run命令部署运行jar项目

           对于一些简单的单体项目,可以使用 docker run 命令可以直接在命令行中运行容器,无需事先构建镜像。这相较于之前使用的 dockerfile 文件来运行部署项目相当于是另外一种简单的部署方法,关于之前使用dockerfile 文件来运行部署这种方法,具体可以参考下面这篇文章

    2024年02月10日
    浏览(49)
  • Docker使用Jenkins部署项目

    Docker安装及配置移步Docker安装及配置 目录 1.拉取Jenkin镜像 2.运行启动Jenkins 3.访问Jenkins 4.配置Jenkins 插件下载  配置 5.配置Git仓库拉代码构建 6.测试构建   可通过以下命令查看镜像 记得在防火墙开启对应端口 说明: 命令         作用 -d  容器后台运行 --name jenkins 容器名

    2024年02月11日
    浏览(46)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包