Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/csharp-4.0/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何了解服务器&x27;jenkins部署和构建代码的IP地址_Jenkins_Docker - Fatal编程技术网

如何了解服务器&x27;jenkins部署和构建代码的IP地址

如何了解服务器&x27;jenkins部署和构建代码的IP地址,jenkins,docker,Jenkins,Docker,我们的jenkins在docker容器中部署/构建代码。每次Jenkins部署代码时,它都会在docker容器的不同实例中进行部署。如何知道该容器的IP地址以及端口id?部署之后,我希望立即对驻留在docker容器中的应用程序运行构建验证测试 如有任何见解,将不胜感激。您需要在docker run中指定-p,然后使用docker inspect获取端口: docker run -d -p 80 --name app crramirez/limesurvey export THEPORT=`doc

我们的jenkins在docker容器中部署/构建代码。每次Jenkins部署代码时,它都会在docker容器的不同实例中进行部署。如何知道该容器的IP地址以及端口id?部署之后,我希望立即对驻留在docker容器中的应用程序运行构建验证测试


如有任何见解,将不胜感激。

您需要在docker run中指定
-p
,然后使用
docker inspect
获取端口:

docker run -d -p 80 --name app crramirez/limesurvey
export THEPORT=`docker inspect --format='{{(index (index .NetworkSettings.Ports "80/tcp") 0).HostPort}}' app`
然后调用应用程序:
wgethttp://localhost:${THEPORT}

如果有许多容器同时运行,那么所有这些都是必需的。但如果一次只部署一个容器。您只需删除上一个容器,然后使用您的端口调用您的应用程序http://localhost:80


关于

谢谢@Carlos,我认为上面的代码片段只给出了端口ID,但我需要完整的IP地址来运行构建验证测试。如何获取完整的IP地址?您好地址始终是
localhost
,或者是启动容器的服务器的IP