首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用maven插件生成docker镜像

使用maven插件生成docker镜像
EN

Stack Overflow用户
提问于 2018-06-18 16:20:41
回答 1查看 420关注 0票数 2

我已经手动编写了dockerfile,但现在我需要配置maven来创建该文件和构建镜像。我正在尝试使用spotify的maven插件。

这是我写的dockerfile,它工作正常:

代码语言:javascript
复制
FROM tomcat:8.0-jre8
RUN rm -rvf /usr/local/tomcat/webapps/ROOT
COPY ./context.xml /usr/local/tomcat/conf/
COPY /target/brainis-1.0-SNAPSHOT.war /usr/local/tomcat/webapps/ROOT.war
CMD ["catalina.sh", "run"]
EXPOSE 8080

我需要确保我的maven插件在构建镜像之前生成相同的docker文件。你能告诉我如何实现它吗?我当前的配置只生成第一个命令FROM tomcat:8.0-jre8,如何在maven中配置该文件的其余部分?

代码语言:javascript
复制
<plugin>
    <groupId>com.spotify</groupId>
    <artifactId>docker-maven-plugin</artifactId>
    <configuration>
        <imageName>spring-tomcat</imageName>
        <baseImage>tomcat:8.0-jre8</baseImage>
    </configuration>
</plugin>
EN

回答 1

Stack Overflow用户

发布于 2018-06-18 16:33:47

你需要将你的Dockerfile添加到你的代码库中,即/src/main/docker/Dockerfile,并以这种方式从Spotify的Maven插件中引用它:

代码语言:javascript
复制
<plugin>
    <groupId>com.spotify</groupId>
    <artifactId>docker-maven-plugin</artifactId>
    <version>${docker.plugin.version}</version>
    <configuration>
        <imageName>${docker.image.prefix}/${project.artifactId}</imageName>
        <dockerDirectory>${project.basedir}/src/main/docker</dockerDirectory>
        <resources>
            <resource>
                <targetPath>/</targetPath>
                <directory>${project.build.directory}</directory>
                <include>${project.build.finalName}.war</include>
            </resource>
        </resources>
    </configuration>
</plugin>

最后一部分,资源,将docker构建的基本路径放在您想要的任何文件夹中,即/target和要包括的文件。

它将运行整个Dockerfile脚本

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/50905290

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档