Docker 通过端口来连接一个容器的实现_docker

这篇文章主要介绍了Docker 通过端口来连接一个容器的实现,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧

Docker容器的连接

1.网络端口映射

我们创建一个python应用的容器

# docker run -d -P training/webapp python app.py

图片[1]-Docker 通过端口来连接一个容器的实现_docker-安全小天地

我们使用 -P 参数创建一个容器,使用 docker ps 来看到端口5000绑定主机端口32768

图片[2]-Docker 通过端口来连接一个容器的实现_docker-安全小天地

我们也可以使用 -p 标识来指定容器端口绑定到主机端口。

两种方式的区别是:

-P :是容器内部端口随机映射到主机的高端口。

-p : 是容器内部端口绑定到指定的主机端口。

………………………………………………………………………………………………………………………………………………………………………

# docker run -d -p 5000:5000 training/webapp python app.py

图片[3]-Docker 通过端口来连接一个容器的实现_docker-安全小天地

另外,我们可以指定容器绑定的网络地址,比如绑定127.0.0.1

# docker run -d -p 127.0.0.1:5001:5000 training/webapp python app.py

图片[4]-Docker 通过端口来连接一个容器的实现_docker-安全小天地

这样我们就可以通过访问127.0.0.1:5001来访问容器的5000端口

容器默认都是绑定 tcp 端口,如果要绑定 UDP 端口,可以在端口后面加上 /udp

# docker run -d -p 127.0.0.1:5000:5000/udp training/webapp python app.py

图片[5]-Docker 通过端口来连接一个容器的实现_docker-安全小天地

docker port <images id> [port]命令可以让我们快捷地查看端口的绑定情况

docker port ce206e3c0ae6 5000

图片[6]-Docker 通过端口来连接一个容器的实现_docker-安全小天地

现在我们把其他容器都关掉,开启一个新的nginx容器

# docker run -d -p 5000:80 –name web111 nginx

图片[7]-Docker 通过端口来连接一个容器的实现_docker-安全小天地

我们把容器的80端口转发到本地的5000端口,然后在外部进行访问

图片[8]-Docker 通过端口来连接一个容器的实现_docker-安全小天地

可以看见我们是可以访问成功的,说明端口转发过来了

2.Docker容器连接

端口映射并不是唯一把 docker 连接到另一个容器的方法。

docker有一个连接系统允许将多个容器连接在一起,共享连接信息。

docker连接会创建一个父子关系,其中父容器可以看到子容器的信息。

3.容器命名

我们创建一个容器的时候,docker会自动对它进行命名。但我们也可以使用–name标识来命名容器

docker run -d -P –name Peithon training/webapp python app.py

图片[9]-Docker 通过端口来连接一个容器的实现_docker-安全小天地

补充知识:如何查看一个docker容器内部开放有哪些端口

不用进入容器bash内部,在linux命令行内输入docker port 容器id 即可查看

以上这篇Docker 通过端口来连接一个容器的实现就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持安全小天地。

------本文已结束,感谢您的阅读------
THE END
喜欢就支持一下吧
点赞7 分享
评论 抢沙发

请登录后发表评论

    暂无评论内容