在服务器进程启动之前在Docker中发布容器端口

在服务器进程启动之前在Docker中发布容器端口,docker,jenkins,Docker,Jenkins,我一直在试图弄明白为什么一些本地通过的JUnit测试在停靠的Jenkins从机中运行时失败 为此,我在docker容器中启动了一个Jenkins从站,并从容器中发布了端口5005,下面命令的输出证明了这一点 diveshp@diveshp-Virtual-Machine:~$ docker ps CONTAINER ID IMAGE COMMAND

我一直在试图弄明白为什么一些本地通过的JUnit测试在停靠的Jenkins从机中运行时失败

为此,我在docker容器中启动了一个Jenkins从站,并从容器中发布了端口5005,下面命令的输出证明了这一点

diveshp@diveshp-Virtual-Machine:~$ docker ps
CONTAINER ID        IMAGE                                                         COMMAND                  CREATED             STATUS              PORTS                    NAMES
562efdc6cdbb        docker.artifactory.abc.com.au/jenkins-slave-vita:11.1   "jenkins-slave -work…"   13 minutes ago      Up 13 minutes       0.0.0.0:5005->5005/tcp   jenkins-slave-local
问题是容器中没有任何进程正在侦听端口5005(尚未)

然后,我将其放入容器中,并尝试使用

mvn清洁测试-Dmaven.surefire.debug

果然,我明白了

[INFO]  T E S T S
[INFO] -------------------------------------------------------
[INFO] Listening for transport dt_socket at address: 5005
但是现在,我无法从IDE(使用localhost:5005)将调试器附加到此端口


我有什么地方做错了吗?

那样使用
docker exec
似乎不对。我会调试Jenkins slave没有启动的原因,然后提交一个正常的Jenkins作业来进行构建和运行测试。@DavidMaze对不起,我想我可能对我的问题描述不正确。奴隶启动的很好。我试图调试为什么一些测试在从机上失败。我切换到从机,并尝试在调试模式下运行测试,以便连接调试器并找到失败的原因。