【问题标题】:Dockerfile start jboss cli failsDockerfile 启动 jboss cli 失败
【发布时间】:2018-01-19 18:33:22
【问题描述】:

我想在 Wildfly 上启动 docker-cli.sh 脚本。

FROM jboss/wildfly:10.0.0.Final

COPY maven/config /opt/jboss/wildfly/standalone/configuration/
COPY maven/deployments /opt/jboss/wildfly/standalone/deployments/
COPY maven/postgres-module /opt/jboss/wildfly/modules/org/postgresql/main/

RUN mkdir -p wildfly/modules/org/postgresql/main

RUN wildfly/bin/add-user.sh admin admin --silent

RUN wildfly/bin/jboss-cli.sh --connect --controller=localhost:9990


CMD ["wildfly/bin/standalone.sh","-b","0.0.0.0","-bmanagement", "0.0.0.0"]

这是我的 docker 文件。 如果我想用 (https://github.com/fabric8io/docker-maven-plugin) mvn docker:build 构建它,我会遇到以下错误:

命令 'wildfly/bin/jboss-cli.sh --connect --controller=localhost:9990' 返回一个非零代码:1 -> [Help 1]

但如果我评论倒数第二行并执行它,它会起作用。

如果我在容器启动后,用 Kitemanic 连接 docker cli,我可以执行这个脚本步骤。

错误日志:

[ERROR] Failed to execute goal io.fabric8:docker-maven-plugin:0.21.0:build (default-cli) on project country_service: Unable to build image [company_service] : The command 'wildfly/bin/jboss-cli.sh --connect --controller=localhost:9990' returned a non-zero code: 1 -> [Help 1]
org.apache.maven.lifecycle.LifecycleExecutionException: Failed to execute goal io.fabric8:docker-maven-plugin:0.21.0:build (default-cli) on project country_service: Unable to build image [company_service] : The command 'wildfly/bin/jboss-cli.sh --connect --controller=localhost:9990' returned a non-zero code: 1
        at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:212)
        at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:153)
        at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:145)
        at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:116)
        at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:80)
        at org.apache.maven.lifecycle.internal.builder.singlethreaded.SingleThreadedBuilder.build(SingleThreadedBuilder.java:51)
        at org.apache.maven.lifecycle.internal.LifecycleStarter.execute(LifecycleStarter.java:128)
        at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:307)
        at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:193)
        at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:106)
        at org.apache.maven.cli.MavenCli.execute(MavenCli.java:863)
        at org.apache.maven.cli.MavenCli.doMain(MavenCli.java:288)
        at org.apache.maven.cli.MavenCli.main(MavenCli.java:199)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
        at java.lang.reflect.Method.invoke(Method.java:497)
        at org.codehaus.plexus.classworlds.launcher.Launcher.launchEnhanced(Launcher.java:289)
        at org.codehaus.plexus.classworlds.launcher.Launcher.launch(Launcher.java:229)
        at org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode(Launcher.java:415)
        at org.codehaus.plexus.classworlds.launcher.Launcher.main(Launcher.java:356)
Caused by: org.apache.maven.plugin.MojoExecutionException: Unable to build image [company_service] : The command 'wildfly/bin/jboss-cli.sh --connect --controller=localhost:9990' returned a non-zero code: 1
        at io.fabric8.maven.docker.AbstractDockerMojo.execute(AbstractDockerMojo.java:226)
        at org.apache.maven.plugin.DefaultBuildPluginManager.executeMojo(DefaultBuildPluginManager.java:134)
        at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:207)
        ... 20 more
Caused by: io.fabric8.maven.docker.access.DockerAccessException: Unable to build image [company_service] : The command 'wildfly/bin/jboss-cli.sh --connect --controller=localhost:9990' returned a non-zero code: 1
        at io.fabric8.maven.docker.access.hc.DockerAccessWithHcClient.buildImage(DockerAccessWithHcClient.java:220)
        at io.fabric8.maven.docker.service.BuildService.doBuildImage(BuildService.java:160)
        at io.fabric8.maven.docker.service.BuildService.buildImage(BuildService.java:124)
        at io.fabric8.maven.docker.service.BuildService.buildImage(BuildService.java:60)
        at io.fabric8.maven.docker.BuildMojo.buildAndTag(BuildMojo.java:58)
        at io.fabric8.maven.docker.BuildMojo.executeInternal(BuildMojo.java:44)
        at io.fabric8.maven.docker.AbstractDockerMojo.execute(AbstractDockerMojo.java:223)
        ... 22 more
Caused by: io.fabric8.maven.docker.access.DockerAccessException: The command 'wildfly/bin/jboss-cli.sh --connect --controller=localhost:9990' returned a non-zero code: 1
        at io.fabric8.maven.docker.access.chunked.BuildJsonResponseHandler.process(BuildJsonResponseHandler.java:25)
        at io.fabric8.maven.docker.access.chunked.EntityStreamReaderUtil.processJsonStream(EntityStreamReaderUtil.java:26)
        at io.fabric8.maven.docker.access.hc.DockerAccessWithHcClient$HcChunkedResponseHandlerWrapper.handleResponse(DockerAccessWithHcClient.java:652)
        at io.fabric8.maven.docker.access.hc.ApacheHttpClientDelegate$StatusCodeCheckerResponseHandler.handleResponse(ApacheHttpClientDelegate.java:172)
        at org.apache.http.impl.client.CloseableHttpClient.execute(CloseableHttpClient.java:222)
        at org.apache.http.impl.client.CloseableHttpClient.execute(CloseableHttpClient.java:164)
        at org.apache.http.impl.client.CloseableHttpClient.execute(CloseableHttpClient.java:139)
        at io.fabric8.maven.docker.access.hc.ApacheHttpClientDelegate.post(ApacheHttpClientDelegate.java:102)
        at io.fabric8.maven.docker.access.hc.DockerAccessWithHcClient.buildImage(DockerAccessWithHcClient.java:218)
        ... 28 more

【问题讨论】:

  • 你能把docker logs 的输出发给这个容器吗?
  • @Fotis 我添加错误日志

标签: maven docker jboss dockerfile docker-for-windows


【解决方案1】:

我找到了一个很好的解决方案(来自队友):

<run>
	<ports>
		<port>8080:8080</port>
		<port>9990:9990</port>
	</ports>
	<extraHosts>
   			<extraHost>my_db_postgress:192.168.99.100</extraHost>
	</extraHosts>
</run>

我在运行配置中添加了一个额外的主机,并将其添加到我的standalone.xml

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2019-09-27
    • 2020-10-08
    • 2017-07-01
    • 1970-01-01
    • 2020-04-04
    • 2016-10-25
    • 2013-04-15
    相关资源
    最近更新 更多