【问题标题】:Adding standalone.xml to JBoss WildFly Docker container将standalone.xml 添加到JBoss WildFly Docker 容器
【发布时间】:2019-08-18 13:03:46
【问题描述】:

我有一个 Java EE8 应用程序,它部署在 JBoss WildFly 16.0.0.Final 上,它使用 Hibernate OGM 访问 MongoDB。

我已经构建了一个定制的 Docker 容器

FROM jboss/wildfly    

# ARG are also known as build-time variables
ARG EAR_FILE=./build/libs/GoStopHandle.ear
ARG WILDFLY_MODULES=./wildfly-as/16.0.0.Final/modules

# Add
COPY ${WILDFLY_MODULES}/system/layers/base/org/hibernate/search/ /opt/jboss/wildfly/modules/system/layers/base/org/hibernate/search/
COPY ${WILDFLY_MODULES}/org/hibernate/hql/ /opt/jboss/wildfly/modules/org/hibernate/hql/
COPY ${WILDFLY_MODULES}/org/hibernate/ogm/ /opt/jboss/wildfly/modules/org/hibernate/ogm/
COPY ${WILDFLY_MODULES}/system/layers/base/org/apache/lucene/ /opt/jboss/wildfly/modules/system/layers/base/org/apache/lucene/

COPY ./mysqldatabase/mysql/main/ /opt/jboss/wildfly/modules/system/layers/base/com/mysqldatabase/mysql/main/
RUN ls -la /opt/jboss/wildfly/modules/system/layers/base/com/mysqldatabase/mysql/main/

RUN ls -la /opt/jboss/wildfly/modules/system/layers/base/org/hibernate/search/
RUN ls -la /opt/jboss/wildfly/modules/org/hibernate/hql/
RUN ls -la /opt/jboss/wildfly/modules/org/hibernate/ogm/
RUN ls -la /opt/jboss/wildfly/modules/system/layers/base/org/apache/lucene/

#ADD standalone-full.xml /opt/jboss/wildfly/standalone/configuration/
#RUN ls -la /opt/jboss/wildfly/standalone/configuration/

#ADD standalone.conf /opt/jboss/wildfly/bin/
#RUN ls -la /opt/jboss/wildfly/bin/

# Add the GoStopHandle ear to the container
ADD ${EAR_FILE} /opt/jboss/wildfly/standalone/deployments/

RUN /opt/jboss/wildfly/bin/add-user.sh admin welcome1 --silent
CMD ["/opt/jboss/wildfly/bin/standalone.sh", "-b", "0.0.0.0", "-bmanagement", "0.0.0.0"]

并添加了 Hibernate OGM 所需的模块/JARS 并添加了我的 EAR。

我可以构建并运行 Docker 映像,它可以正常启动,尽管无法连接到 MongoDB 容器。我需要添加我的数据源等。

容器 ID 图像命令
创建状态端口
名称 f0e0c4a948ec gostophandle "/opt/jboss/wildfly/..."
22 小时前 22 小时前 0.0.0.0:32779->8080/tcp
blissful_newton 93e95917216d mongo
“docker-entrypoint.s…” 22 小时前 上升 22 小时
0.0.0.0:27017-27019->27017-27019/tcp goStopHandleMongo

所以我添加了我的:standalone.conf 和standalone-full.xml

ADD standalone-full.xml /opt/jboss/wildfly/standalone/configuration/
ADD standalone.conf /opt/jboss/wildfly/bin/

即使构建了 Docker 映像,它现在也不会运行,只是返回:

MacBook-Pro:GoStopHandle NOTiFY$ sudo docker run -d -p 8080 gostophandle:latest
Password:
f3a6b533893f0cbfc8ab14604c7a780440ff8b568c2136a2c7db11ffa856939c
MacBook-Pro:GoStopHandle NOTiFY$ 

【问题讨论】:

  • 如果没有来自容器的日志,就无法真正说出发生了什么。请在您的帖子中提供docker logs stopped_containerId 的输出。可以使用 docker ps -a 检索停止的容器 ID。
  • 我的回答显示了日志和原因 -> 'PrintGCDateStamps',这是 Java 8 的功能。已将其删除,一切正常。

标签: docker jboss wildfly


【解决方案1】:

你可以切换到你的

独立配置

 -Djboss.server.default.config=standalone-my-full.xml

【讨论】:

    猜你喜欢
    • 2015-03-06
    • 2016-07-29
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-08-31
    • 1970-01-01
    相关资源
    最近更新 更多