如何在dockerfile中添加JBOSS_HOME并运行jboss容器

时间:2018-02-09 09:47:26

标签: docker jboss jboss-wildfly-11

我想添加自定义 JBOSS_HOME ,但是当我运行我的dockerfile时,它会给我一个错误。

JBOSS_HOME 可能指向不同的安装 - 可能会出现无法预测的结果。

无法访问jarfile

/home/shri/opt/jboss/wildfly/jboss-modules.jar

我的Dockerfile是: -

FROM jboss/wildfly   
MAINTAINER shri  
USER root  
ENV JBOSS_HOME /home/shri/opt/jboss/wildfly  
RUN mkdir -p  $JBOSS_HOME  
ADD jboss-modules.jar /home/shri/jboss/wildfly/  
USER jboss  

使用以下方式构建dockerfile:

docker build -t jboss

使用以下方式运行dockerfile:

docker run -p 8080:8080 jboss

2 个答案:

答案 0 :(得分:0)

Dockerfile很好,它也在添加你的自定义jar文件,那么问题出在哪里?

我认为你正在使用的基本图像设置工作目录。到/ opt / jboss并且有一个默认的jboss文件。我认为默认情况下它会选择这个jar文件。

尝试更改工作目录,在设置ENV后将此行(或类似行)添加到docker文件,然后尝试

WORKDIR ${JBOSS_HOME} 

答案 1 :(得分:0)

你想要达到的目标并不明显。

您正在构建的父图片中的WildFly位于/opt/jboss/wildfly,但您

  • 将自定义jboss-modules.jar添加到/home/shri/jboss/wildfly/
  • 并将JBOSS_HOME设置为显然不存在的/home/shri/opt/jboss/wildfly

如果您只想使用自定义jboss-modules.jar,那么最简单的方法是覆盖/opt/jboss/wildfly/jboss-modules.jar中的原始版本,并保持JBOSS_HOME不变。