博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
『中级篇』容器的端口映射(28)
阅读量:6849 次
发布时间:2019-06-26

本文共 847 字,大约阅读时间需要 2 分钟。

原创文章,欢迎转载。转载请注明:转载自,谢谢!

原文链接地址:

前几次讲了bridge 和bridge network,今天这次继续说docker的网络,docker提供一个web服务,如何让你的容器的web服务供外边的公网访问到。

nginx为例
  • 本地创建一个nginx的服务,nginx这个我就不介绍了,大家baidu吧,现在很多的互联网公司都用它。
sudo service docker restartsudo docker run --name web -d nginx复制代码

现在虽然创建了一个nginx服务,想访问,但是没办法访问,如果真要访问还得借助exec的方式来访问。

sudo docker exec -it web /bin/shexit复制代码
  • 查看naginx 的ip
sudo docker network inspect bridge复制代码
  • ping ip
ping 172.17.0.2复制代码
  • 访问
telnet 172.17.0.2 80curl http://172.17.0.2复制代码
nginx映射到本地端口
  • 命令: -p 80:80
sudo docker stop websudo docker rm websudo docker run --name web -d -p 80:80 nginxcurl http://127.0.0.1#可以看到eth1的ip地址是 172.28.128.3ip a复制代码

把容器内的80端口映射到本地的80端口,也就说宿主机的局域网就可以访问80端口了,如果宿主机是阿里云或者腾讯云也就可以访问了。

原理图

PS:这里不通过公网服务器演示了,基本用阿里云或者腾讯云都有公有IP的直接映射就可以了用了,通过这种方式我们知道很多的服务都是提供端口的,例如:tomcat8080端口,mysql3306端口(-p 3306:3306),创建完容器后讲端口和本机的端口进行映射就可以了直接访问了。

image

你可能感兴趣的文章
Code Signal_练习题_All Longest Strings
查看>>
(转)Redis
查看>>
ARTS打卡计划第三周-Review
查看>>
delphi 知道excel选中的单元格的行号
查看>>
Vue.js中data,props和computed数据
查看>>
软件不能用Surface Pro触控笔 微软这有解决办法
查看>>
contentsize ,ios 7和 ios7之前的 有点差别,
查看>>
Tomcat
查看>>
try catch 怎么写?
查看>>
iOS学习笔记(十五)——数据库操作(SQLite)
查看>>
Android spinner 样式及其使用详解
查看>>
ftps加密服务器
查看>>
[置顶] 批处理命令
查看>>
谈谈不换行空格
查看>>
ubuntu 13.04 nginx.conf 配置详解
查看>>
Android调用系统的打电话和发短信界面(1.将消息内容带过去2.实现群发)
查看>>
如何在内网安装compass
查看>>
TF-IDF理解及其Java实现
查看>>
使用升级版的 Bootstrap typeahead v1.2.2
查看>>
项目中自增长编码生成方法
查看>>