docker 网络模式研究了许久,其实我们需要的是docker run -p 80:80命令

我们只是希望能够从外部访问到docker而已,并不需要去折腾该死的网络模式,桥接,host等等。

-p: 端口映射,格式为:主机(宿主)端口:容器端口

 sudo docker run -t -i  -p 5000:5000 ubuntu14.04/first

也可以这样

 sudo docker run -t -i  -p 5000:5000 -p 5022:22 ubuntu14.04/first

 

使用镜像nginx:latest以后台模式启动一个容器,并将容器的80端口映射到主机随机端口。

  ➜  sudo docker pull nginx  

  Using default tag: latest

➜  docker run -P -d nginx:latest
9e777d40aee2116fb84f1f1542a5afe9a7bd3f03b97fbd1d2cc1db29bdd174c9
➜  sudo docker ps -a       
CONTAINER ID        IMAGE               COMMAND                  CREATED             STATUS              PORTS                   NAMES
9e777d40aee2        nginx:latest        "nginx -g 'daemon of…"   14 seconds ago      Up 13 seconds       0.0.0.0:32768->80/tcp   naughty_babbage
➜  docker port 9e77
80/tcp -> 0.0.0.0:32768

在主机可以localhost:32768进行访问nginx服务器

 

 

这个网站总结的很好:http://www.runoob.com/docker/docker-run-command.html

外部访问docker容器(docker run -p/-P 指令)
https://www.jianshu.com/p/2b424c3bf0f7

posted @ 2018-11-20 21:06  船长博客  阅读(1472)  评论(0编辑  收藏  举报
永远相信美好的事情即将发生!