(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. 关于redis的持久化策略

    Redis的持久化 Redis虽然是基于内存的存储系统,但是它本身是支持内存数据的持久化的,而且提供两种主要的持久化策略:RDB快照和AOF日志. Redis的RDB快照 Redis支持将当前数据的快 ...

  2. Linux安装版本solr-5.3.0

    准备材料:solr-5.3.0.tgz 下载路径:http://mirrors.hust.edu.cn/apache/lucene/solr/ 安装solr 1.解压solr [root@svn-se ...

  3. shellshock溢出攻击

    实验背景 2014年9月24日,Bash中发现了一个严重漏洞shellshock,该漏洞可用于许多系统,并且既可以远程也可以在本地触发.在本实验中,需要亲手重现攻击来理解该漏洞,并回答一些问题. 什么 ...

  4. [Flutter] Custom a Slider with SliderTheme

    SliderTheme( data: SliderTheme.of(context).copyWith( activeTrackColor: Colors.white, inactiveTrackCo ...

  5. cube.js 学习(二)cube.js与 graphql2chartjs的比较

    cube.js 是目前看到从设计以及理念上很不错的数据分析事件,graphql2chartjs 是hasura graphql-engine 团队开发 的一个类库基于graphql,以下做一些比较 c ...

  6. mongoDB线上数据库连接报错记录

    报错信息提示:无法在第一次连接时连接到服务器 别的一切正常,经过查询得知,是因为如果电脑没设定固定IP,并且重启情况下可能会导致IP地址更改. 解决方法: 将本机ip地址添加到cluster的白名单即 ...

  7. 深入基础(二)练习题,REPL交互解析器

    NPM     关于npm命令其实不算很多很多,起码比dos命令少不少呢废话少说npm命令大全and各个命令用处持续更新中..来自园子内另外一位大神~:http://www.cnblogs.com/P ...

  8. 说明os,sys模块有什么不同

    官方解释: os: This module provides a portable way of usingoperating system dependent functionality. 翻译:提 ...

  9. comobox在datagrid里,当滚动scrollbar时,会导致comobox选中项被重置的解决办法

    VirtualizingStackPanel.IsVirtualizing="False"

  10. 12.linux上Apache虚拟主机的建立和https协议网站建立

    一.Apache虚拟主机的建立   虚拟web主机 在同一台服务器上建立多个web站点,每个站点不独占用一台真正的服务器       1.建立dns解析 两个域名同一个ip               ...