无法在docker windows容器中运行批处理文件

时间:2018-01-31 22:52:02

标签: docker containers jbossfuse docker-windows

我试图在Windows容器中运行Jboss保险丝。我在文件夹中都需要二进制文件,并且能够将它们复制到容器中,但是当我运行批处理文件以在容器中启动服务时,没有任何反应。同一个批处理文件在我的本地工作正常。我错过了什么?

从我的本地运行二进制文件就像这样

PS C:\serverbox\jboss-fuse-6.3.0.redhat-187\bin> .\JbossFuse-Karaf-service.bat
wrapper  | --> Wrapper Started as Console
wrapper  | Launching a JVM...
jvm 1    | Wrapper (Version 3.2.3) http://wrapper.tanukisoftware.org
jvm 1    |   Copyright 1999-2006 Tanuki Software, Inc.  All Rights Reserved.
jvm 1    |
jvm 1    | Please wait while JBoss Fuse is loading...
jvm 1    | Feb 01, 2018 3:33:51 PM org.apache.karaf.main.SimpleFileLock lock
jvm 1    | INFO: locking
jvm 1    |
jvm 1    |   1% [>                                                                       ]
jvm 1    |   2% [=>                                                                      ]
jvm 1    |   3% [==>                                                                     ]

当我将相同的二进制文件复制到容器并运行相同的批处理文件时,它看起来像这样..

PS C:\serverbox\jboss-fuse-6.3.0.redhat-187\bin> .\JbossFuse-Karaf-service.bat
PS C:\serverbox\jboss-fuse-6.3.0.redhat-187\bin>

它没有做任何事情。

我是docker的新手,不知道卷在容器中的工作方式。当路径显示c:\ serverbox时,容器是否理解并使用容器转到该文件夹​​?

1 个答案:

答案 0 :(得分:0)

我发现了问题,容器不适用于相对的Windows路径,例如C:\ serverbox \ jboss-fuse-6.3.0.redhat-187 \ bin .. \ etc

路径必须是绝对的C:\ serverbox \ jboss-fuse-6.3.0.redhat-187 \ etc。

希望这有帮助。