Eid*_*oft 5 port networking ping netcat docker
我想在docker中传达两个容器,我正在使用netcat进行测试.首先我创建了Dockefile:
FROM ubuntu
WORKDIR /root
RUN apt-get update && apt-get install netcat iputils-ping -y
Run Code Online (Sandbox Code Playgroud)
并添加了图像:
docker build . -t ubuntu_netcat
Run Code Online (Sandbox Code Playgroud)
我也创建了一个新网络:
docker network create --driver bridge nettest
Run Code Online (Sandbox Code Playgroud)
然后我运行两个容器:
docker run --net=nettest --expose=8080 -it --name pc1 ubuntu_netcat
docker run --net=nettest --link=pc1 -it --name pc2 ubuntu_netcat
Run Code Online (Sandbox Code Playgroud)
在第一个容器(pc1)我用netcat命令在端口8080上监听:
nc -vlk 8080
Run Code Online (Sandbox Code Playgroud)
我期望从执行的第二个容器(pc2)与它进行通信:
nc -v pc1 8080
Run Code Online (Sandbox Code Playgroud)
但我只是拒绝连接:
root@c592b2015439:~# nc -v pc1 8080
pc1.nettest [172.18.0.2] 8080 (?) : Connection refused
Run Code Online (Sandbox Code Playgroud)
我一直在看码头文件,但似乎都是正确的.事实上,我可以成功地在容器之间执行ping,因此它们可以到达另一个,但是我的端口有问题.我究竟做错了什么?
谢谢
And*_*inn 12
看起来这个版本的netcatUbuntu不像通常那样听.您必须-p为端口指定(即使选项看起来将端口作为位置选项).
你的netcat监听器命令应该是:
nc -vlkp 8080
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
2052 次 |
| 最近记录: |