云计算-10-Docker网络使用
1216
版权声明
我们非常重视原创文章,为尊重知识产权并避免潜在的版权问题,我们在此提供文章的摘要供您初步了解。如果您想要查阅更为详尽的内容,访问作者的公众号页面获取完整文章。
Docker网络使用摘要
外部访问容器
通过使用 -p 或 -P 参数,可以将容器的内部端口映射到宿主机的端口以供外部访问。例如,通过命令 docker run --name mynginx2 -d -P nginx,Docker 会随机映射宿主机端口到容器的端口。可以使用 docker ps 或 docker container ls 查看映射详情,并通过浏览器或 curl 访问容器服务。
日志可以通过 docker logs 指令查看,支持持续跟踪 (-f) 或列出最新日志 (--tail)。
使用Docker Link实现容器链接
docker link 参数可用于避免容器重启导致 IP 地址变化的问题。通过 docker run --link=[容器名]:[别名] 格式进行容器链接。例如,容器 mycentos2 可通过链接访问 mycentos1,并使用别名进行通信。
在容器中可以通过 cat /etc/hosts 查看链接的别名和 IP 地址,并验证连接性。
Docker默认网络与网络模式
Docker默认使用桥接网络 (docker0),所有容器通过网桥进行通信。启动容器时可以选择以下网络模式:
- bridge模式: 默认选项,容器通过网桥获取IP。
- none模式: 不配置网络,用户可自行配置。
- container模式: 容器与已有容器共享网络命名空间。
- host模式: 容器与宿主机共享网络命名空间。
- 用户自定义: 用户通过命令创建新的网络。
container模式示例
创建容器时使用 --net=container:name/id 参数共享网络空间。例如,mycentos2 容器可与 mycentos1 容器共享网络。
host模式示例
通过 docker run --net=host,容器和宿主机共享网络命名空间。
bridge模式示例
默认使用的桥接网络模式,容器通过网桥 docker0 自动分配IP。
用户自定义网络实现容器互联
用户可以使用 docker network create 命令创建新网络。例如,创建名为 testnet 的网络后,可以通过 --network testnet 参数将容器添加到该网络。
通过 ping 验证容器间的互联性,例如 mycentos5 和 mycentos6 容器可以在同一网络中相互通信。
总结
本文详细介绍了 Docker 网络的使用,包括外部访问容器、容器链接、自定义网络和多种网络模式。通过这些功能,用户可以灵活配置容器网络以满足不同需求。
springboot葵花宝典
还在用多套工具管项目?
一个平台搞定产品、项目、质量与效能,告别整合之苦,实现全流程闭环。
白皮书上线