(1).容器端口映射

  容器的端口映射用到了-p选项,-p [物理机端口]:[容器实例端口]

  让centos:httpd运行在后台

[root@youxi1 ~]# docker run -d -p 80:80 centos:httpd
92c1d60be419a06d24f6a8eb4c60e89a5d5e6652087ffa73bd86be320fa589e0
[root@youxi1 ~]# docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
92c1d60be419 centos:httpd "/bin/sh -c /usr/loc…" 4 seconds ago Up 3 seconds 0.0.0.0:80->80/tcp jovial_chebyshev

  接着使用浏览器访问

  查看物理机上开启的80代理端口

[root@youxi1 ~]# yum -y install net-tools
[root@youxi1 ~]# netstat -antup | grep 80
tcp 0 0 192.168.5.101:46116 114.80.24.198:80 TIME_WAIT -
tcp 0 0 192.168.5.101:36968 114.80.24.199:80 TIME_WAIT -
tcp 0 0 192.168.5.101:58516 114.80.24.201:80 TIME_WAIT -
tcp 0 0 192.168.5.101:46120 114.80.24.198:80 TIME_WAIT -
tcp 0 0 192.168.5.101:60010 114.80.24.203:443 TIME_WAIT -
tcp6 0 0 :::80 :::* LISTEN 5040/docker-proxy  //这一条
udp 0 0 127.0.0.1:323 0.0.0.0:* 801/chronyd
udp6 0 0 ::1:323 :::* 801/chronyd

(2).访问后台运行的容器实例

  语法:docker exec -it [容器ID|镜像名称] /bin/bash

  进入后台运行的容器实例,查看容器的IP地址

[root@youxi1 ~]# docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
92c1d60be419 centos:httpd "/bin/sh -c /usr/loc…" 13 minutes ago Up 13 minutes 0.0.0.0:80->80/tcp jovial_chebyshev
[root@youxi1 ~]# docker exec -it 92c1d60be419 /bin/bash
[root@92c1d60be419 /]# yum -y install net-tools
[root@92c1d60be419 /]# ifconfig
eth0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
inet 172.17.0.2 netmask 255.255.0.0 broadcast 172.17.255.255  //容器实例的IP地址
ether 02:42:ac:11:00:02 txqueuelen 0 (Ethernet)
RX packets 83 bytes 319729 (312.2 KiB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 68 bytes 4649 (4.5 KiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0 lo: flags=73<UP,LOOPBACK,RUNNING> mtu 65536
inet 127.0.0.1 netmask 255.0.0.0
loop txqueuelen 1000 (Local Loopback)
RX packets 0 bytes 0 (0.0 B)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 0 bytes 0 (0.0 B)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0

  在看一下物理机的IP地址

[root@youxi1 ~]# ifconfig
docker0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
inet 172.17.0.1 netmask 255.255.0.0 broadcast 172.17.255.255  //这个IP与容器实例处于同网段
inet6 fe80::42:24ff:fe5d:36c1 prefixlen 64 scopeid 0x20<link>
ether 02:42:24:5d:36:c1 txqueuelen 0 (Ethernet)
RX packets 8209 bytes 333975 (326.1 KiB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 12228 bytes 40934054 (39.0 MiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0 ens33: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
inet 192.168.5.101 netmask 255.255.255.0 broadcast 192.168.5.255
inet6 fe80::201:7257:85b:7dc8 prefixlen 64 scopeid 0x20<link>
ether 00:0c:29:e6:d6:27 txqueuelen 1000 (Ethernet)
RX packets 177898 bytes 60097281 (57.3 MiB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 112125 bytes 155022609 (147.8 MiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0 lo: flags=73<UP,LOOPBACK,RUNNING> mtu 65536
inet 127.0.0.1 netmask 255.0.0.0
inet6 ::1 prefixlen 128 scopeid 0x10<host>
loop txqueuelen 1000 (Local Loopback)
RX packets 32 bytes 2592 (2.5 KiB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 32 bytes 2592 (2.5 KiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0 vethf3eac0e: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
inet6 fe80::8098:68ff:fed3:5ad7 prefixlen 64 scopeid 0x20<link>
ether 82:98:68:d3:5a:d7 txqueuelen 0 (Ethernet)
RX packets 81 bytes 5530 (5.4 KiB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 98 bytes 321124 (313.5 KiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0

  

Docker容器(三)——容器端口映射的更多相关文章

  1. docker 笔记--运行中的容器如何添加端口映射

    解决: iptables -t nat -A DOCKER -p tcp --dport ${YOURPORT_1} -j DNAT --to-destination ${CONTAINERIP}:$ ...

  2. docker 运行nginx并进入容器内部、端口映射

    一.docker运行容器 1.从网易蜂巢镜像仓库下载nginx镜像 : 2.拉取镜像到本地,并查看本地的镜像: $ docker pull hub.c..com/library/node:latest ...

  3. Docker实战(五)之端口映射与容器互联

    除了网络访问外,Docker还提供了两个很方便的功能来满足服务访问的基本需求:一个是允许映射容器内应用的服务端口到本地宿主主机;另一个是互联机制实现多个容器间通过容器名来快速访问. 1.端口映射实现访 ...

  4. docker 实践五:端口映射和容器互联

    本篇是关于 docker 容器的端口映射和容器之间的互联内容. 注:环境为 CentOS7,docker 19.03. docker 的容器除了能连接网络外,在许多时候,我们需要让多个容器来协同完成任 ...

  5. Docker 底层技术与端口映射

    容器底层实现技术  1.cgroup 实现了资源的限额:CPU,内存,硬盘 cgroup使用  docker run -d -m 100M httpd 2.namespace 实现了资源隔离 name ...

  6. docker 网络模式 和 端口映射

    docker 的 网络模式 docker 自带 3 种 网络模式:分别是bridge网络,host网络,none网络,可以使用  docker network ls  命令查看. 1.none网络 这 ...

  7. Docker基础内容之端口映射

    随机映射 docker run -d -P training/webapp python app.py # -P会随机映射一个 49000~49900 的端口到内部容器开放的网络端口 映射所有接口地址 ...

  8. Docker 安装nginx 与端口映射

    1. 拉取镜像(网易云docker镜像仓库) docker pull hub.c.163.com/library/nginx:latest 2. 运行nignx,并做端口映射 -d 后台运行  -p映 ...

  9. 使用iptables为docker容器动态添加端口映射

    1.将当前iptables的配置写入保存到/etc/sysconfig/iptables 2.保存 /etc/init.d/iptables sava 3.修改iptables配置(vi /etc/s ...

  10. Docker入门之六端口映射与容器互联

    一.端口映射 在之前的博客搭建私有仓库时用到这样一句:docker run -d -p 5000:5000 -v /opt/data/registry:/tmp/registry registry来r ...

随机推荐

  1. HDFS中的数据块(Block)

    我们在分布式存储原理总结中了解了分布式存储的三大特点: 数据分块,分布式的存储在多台机器上 数据块冗余存储在多台机器以提高数据块的高可用性 遵从主/从(master/slave)结构的分布式存储集群 ...

  2. Flask - flask-script | 多app应用 | wtforms

    flask-script 用于实现类似于django中 python3 manage.py runserver ...类似的命令 安装 >: pip3 install flask-script ...

  3. car购车翻译篇

    Sedans 4门轿车 si 运动型车,通常匹配6挡位变速箱 Coupes 双门,有少少跑车的含义 Hatchbacks 掀背   配置英语 Honda Sensing® Standard 感应标准, ...

  4. 自用 微信小程序跳小程序

    "window": { "navigationBarTextStyle": "black", "navigationBarTitl ...

  5. 爬虫基础以及一个简单的实例(requests,re)

    最近在看爬虫方面的知识,看到崔庆才所著的<Python3网络爬虫开发实战>一书讲的比较系统,果断入手学习.下面根据书中的内容,简单总结一下爬虫的基础知识,并且实际练习一下.详细内容请见:h ...

  6. (14)Go导入包几种方式

    (1)一般方式[导入单个和多个] (2)匿名导入包/忽略包  (主要用到有些包的init函数) (3)点操作包 (4)包别名/自定义包名 package main ////导入单个包 //import ...

  7. mysql 统计查询出来的数目

    select count(*) as dd from users;

  8. C++概念分析之 重载、重写(覆盖)和隐藏的区别

    一.基本概念区别: 重载:是指同一可访问区内被声明的几个具有不同参数列(参数的类型,个数,顺序不同)的同名函数,根据参数列表确定调用哪个函数,重载不关心函数返回类型. 隐藏:是指派生类的函数屏蔽了与其 ...

  9. 【知识点】同样是消息队列,Kafka凭什么速度那么快?

    同样是消息队列,Kafka凭什么速度那么快? 作者 | MrZhangxd Kafka的消息是保存或缓存在磁盘上的,一般认为在磁盘上读写数据是会降低性能的,因为寻址会比较消耗时间,但是实际上,Kafk ...

  10. 关于hexo与github使用过程中的问题与笔记

    快速阅读 如何用github 和hexo 创建一个blog 1.github中要新建一个与用户名同一样的仓库, 如:homehe.github.io - 必须是io后缀.一个帐户 只能建立一个 2. ...