idea 使用 Docker 打包镜像的两种方式_07

简介:

idea 使用 Docker 打包镜像的两种方式_07
  • 一、方式:
    • 一、idea 的docker 插件 和Dockerfile;
    • 二、pom和Dockerfile结合。
  • 二、详解
    • 第一种:
      • 1、第一步,安装Docker插件
        0f91e920-7bbd-40d1-b8c0-3ccbb2be0d2f-5210562.jpg
        • 安装后,需要重启;
      • 2、创建Dockerfile 文件,路径可以放在和pom 同级目录,也可以/src/main/docker 中 ;测试为主,所以内容可以简单。如下
        8d79f6ff-92a6-4f02-b89a-c0bc9c11d1c5-5210562.jpg
        • FROM java:8
        • ADD /.jar app.jar
        • EXPOSE 8080
        • ENTRYPOINT ["java","-jar","/app.jar"]
      • 3、配置启动命令,如
        3310bfda-0dc1-4082-a329-0686bee2354b-5210562.jpg
        53e2c599-5135-4336-8fd2-9087b26869ff-5210562.jpg
      • 4、 点击启动
        d81f438d-118e-4573-af22-d7595233df0b-5210562.jpg
    • 第二种:
      • 1、pom文件
        0414fe5a-86c4-40ed-9183-b305670a7d15-5210562.jpg
        • <plugin>
          • <groupId>com.spotify</groupId>
          • <artifactId>docker-maven-plugin</artifactId>
          • <version>1.0.0</version>
          • <!--将插件绑定在某个phase执行,这个executions可以不添加,-->
          • <executions>
            • <execution>
              • <id>build-image</id>
              • <phase>package</phase>
              • <goals>
                • <goal>build</goal>
              • </goals>
            • </execution>
          • </executions>
          • <configuration>
            • <!--指定生成的镜像名-->
            • <imageName>${project.artifactId}</imageName>
              • <!--指定标签-->
            • <imageTags>
              • <imageTag>latest</imageTag>
            • </imageTags>
              • <!-- 指定 Dockerfile 路径 ${project.basedir}:项目根路径下-->
            • <dockerDirectory>${project.basedir}</dockerDirectory>
              • <!--指定远程 docker api地址,你的docker安装的地址,一定要测试docker是否可以远程访问-->
            • <dockerHost>https://127.0.0.1:2376</dockerHost>
              • <!-- 这里是复制 war 包到 docker 容器指定目录配置 -->
            • <resources>
              • <resource>
                • <targetPath>/</targetPath>
                  • <!--jar 包所在的路径 此处配置的 即对应 target 目录-->
                • <directory>${project.build.directory}</directory>
                  • <!-- 需要包含的 jar包 ,这里对应的是 Dockerfile中添加的文件名,一定要注意,如果我们不配置finalName 系统自定义, 容易出现问题,所以我建议在<build></build>中记得自定义 <build><finalName>springboot-docker</finalName>-->
                • <include>${project.build.finalName}.jar</include>
              • </resource>
            • </resources>
          • </configuration>
          • </plugin>
      • 2、创建Dockerfile 文件,路径可以放在和pom 同级目录,也可以/src/main/docker 中 ;测试为主,所以内容可以简单。如下
        34545311-77c6-4c43-b037-c22bcf08452c-5210562.jpg
        • FROM java:8
        • ADD /.jar app.jar
        • EXPOSE 8080
        • ENTRYPOINT ["java","-jar","/app.jar"]
          dbf84edd-df5e-4358-be37-e50714629a35-5210562.jpg
      • 3、执行
        20fa92c7-cd61-43d6-b37b-0bd42ea8bf9b-5210562.jpg

相关文章
|
9月前
|
JavaScript Docker 容器
使用Docker多阶段构建优化镜像大小
使用Docker多阶段构建优化镜像大小
559 100
|
9月前
|
缓存 安全 Linux
优化Docker镜像大小的多阶段构建实践
优化Docker镜像大小的多阶段构建实践
549 99
|
9月前
|
缓存 Docker 容器
优化Docker镜像大小的五个实用技巧
优化Docker镜像大小的五个实用技巧
854 98
|
9月前
|
安全 Go Docker
使用Docker多阶段构建优化镜像大小
使用Docker多阶段构建优化镜像大小
|
8月前
|
NoSQL 算法 Redis
【Docker】(3)学习Docker中 镜像与容器数据卷、映射关系!手把手带你安装 MySql主从同步 和 Redis三主三从集群!并且进行主从切换与扩容操作,还有分析 哈希分区 等知识点!
Union文件系统(UnionFS)是一种**分层、轻量级并且高性能的文件系统**,它支持对文件系统的修改作为一次提交来一层层的叠加,同时可以将不同目录挂载到同一个虚拟文件系统下(unite several directories into a single virtual filesystem) Union 文件系统是 Docker 镜像的基础。 镜像可以通过分层来进行继承,基于基础镜像(没有父镜像),可以制作各种具体的应用镜像。
894 6
|
9月前
|
Java Docker 容器
使用Docker多阶段构建优化镜像大小
使用Docker多阶段构建优化镜像大小
376 8
|
10月前
|
缓存 Ubuntu Docker
Ubuntu环境下删除Docker镜像与容器、配置静态IP地址教程。
如果遇见问题或者想回滚改动, 可以重启系统.
638 16
|
10月前
|
运维 关系型数据库 数据库
应用官方 Docker 镜像已成熟,团队为何转向 Websoft9 而不再依赖 Bitnami
随着云原生发展,部署工具从 Bitnami 转向 Websoft9。后者基于官方镜像,提供多应用编排与统一运维,提升部署效率与维护能力,适合多系统协同场景。
应用官方 Docker 镜像已成熟,团队为何转向 Websoft9 而不再依赖 Bitnami
|
10月前
|
Ubuntu 网络安全 PHP
如何使用vscode的Docker插件管理ubuntu 拉取服务器的镜像以及创建容器
本测试镜像旨在记录使用vscode的Docker插件拉取病创建Dockerfile,以及拉取镜像。
|
11月前
|
存储 缓存 Serverless
【Azure Container App】如何在Consumption类型的容器应用环境中缓存Docker镜像
在 Azure 容器应用的 Consumption 模式下,容器每次启动均需重新拉取镜像,导致冷启动延迟。本文分析该机制,并提出优化方案:使用 ACR 区域复制加速镜像拉取、优化镜像体积、设置最小副本数减少冷启动频率,或切换至 Dedicated 模式实现镜像缓存,以提升容器启动效率和应用响应速度。
513 0

热门文章

最新文章