一、容器端口映射

1.1. 外部访问容器

  在启动容器时候,如果不指定参数,在容器外部是无法通过网络来访问容器内的服务的

  当容器运行一些网络服务的时候,我们可以通过指定-p或者-P参数来实现能够让外部访问的效果

  1. -P(大P) :Docker会随机映射一个49000~49900的端口到内部容器开放的网络端口
  2. -p(小p):  可以指定要映射的端口,并且在一个指定端口上只可以绑定一个容器
[root@rsync131 ~]# docker run -it -P -d --name web -v /opt/web/ centos
[root@rsync131 ~]# docker run -it -d -p 5000:5000 -v /opt/data/docker:/tmp/registry registry

1.2. 映射到指定地址的指定端口

  可以使用IP:HostPort:ContainerPort格式指定映射使用一个特定的地址

[root@rsync131 ~]# docker run -it -d -p 127.0.0.1:2000:2000 centos

  还可以绑定udp端口

[root@rsync131 ~]# docker run -it -d -p 127.0.0.1:2000:2000/udp centos

1.3. 映射到指定地址的任意端口

  使用IP::ContainerPort绑定IP的任意端口到容器的2000端口,本地主机会自动的分配端口

[root@rsync131 ~]# docker run -it -d -p 127.0.0.1::2000 centos

1.4. 查看映射端口的配置

  使用docker port 命令来查看当前映射的端口配置

[root@rsync131 ~]# docker port 6df20cdacf8d
5000/tcp -> 0.0.0.0:5000

  容器有自己内部的IP和网络,可以使用docker inspect + 容器名或者容器ID 查看具体的信息

二、容器与容器直接实现互联

2.1. 自定义容器名

  容器的连接系统是根据容器的名字来执行的,所以要先给容器起一个好记得名字

  在使用docker run 创建容器的是 指定--name 来定义容器的名字

[root@rsync131 ~]# docker run -it -P -d --name web1 -v /opt/web:/opt/ centos

  可以使用docker inspect 来看容器的名字

[root@rsync131 ~]# docker inspect -f "{{ .Name }}" 042d3c956715
/db8

2.2. 容器互联

  使用--link参数可以实现容器之间的安全交互

[root@rsync131 ~]# docker run -it -d -P --name link --link db1:db1 centos

Docker端口映射(六)的更多相关文章

  1. Docker端口映射及创建镜像演示(二)--技术流ken

    前言 在上一篇博客<Docker介绍及常用操作演示--技术流ken>中,已经详细介绍了docker相关内容以及有关镜像和容器的使用命令演示. 现在我们已经可以自己下载镜像,以及创建容器了. ...

  2. Docker端口映射及创建镜像演示(二)

    Docker暴露容器方法 第一种:将容器中的一个端口映射成宿主机中的一个随机端口 第二种:将容器中的一个端口映射成宿主机中的一个端口 第三种:将容器中的一个端口映射成宿主机中的一个特定网卡上的随机端口 ...

  3. Docker端口映射

    Docker端口映射是指将容器内应用的服务端口映射到本机宿主机器.当要在宿主机外部访问Docker内部应用时,需要对容器内应用端口进行映射. 一.容器启动时指定端口映射 容器运行时可以通过-p 或 - ...

  4. docker端口映射,批量删除容器

    docker端口映射 http://blog.csdn.net/yjk13703623757/article/details/69212521 批量删除容器 http://blog.csdn.net/ ...

  5. docker 端口映射错误解决方法

    今天搞了半天shipyard,在网页上打开时无法显示容器和镜像,最后发现是docker端口映射错误,由于防火墙未关闭: 4月 12 18:51:29 localhost firewalld[757]: ...

  6. docker问题:docker端口映射错误

    1 docker端口映射错误 1.1 问题描述 利用docker启动nginx容器的时候报错: 1.2 解决办法 一次执行下面的命令就可以解决 pkill docker iptables -t nat ...

  7. 【Docker端口映射】

    Docker端口映射即将容器内开放的端口映射到宿主机端口,以实现外部网络的访问. 首先,我们先下载用于测试端口映射的镜像: [root@fedora ~]# docker pull training/ ...

  8. 详解Docker 端口映射与容器互联

    详解Docker 端口映射与容器互联 1.端口映射实现访问容器 1.从外部访问容器应用 在启动容器的时候,如果不指定对应的参数,在容器外部是无法通过网络来访问容器内部的网络应用和服务的. 当容器中运行 ...

  9. Docker 端口映射问题解决

    在操作Docker容器时发现了其一个端口映射的BUG,具体表现为:开启容器时做了端口映射80:8080,即宿主机的80端口映射到容器内部的8080Jboss端口.一开始测试也没有什么问题,都可以联通, ...

随机推荐

  1. 系统当前时间system.currenttimemillis与new Date().getTime() 区别

    system.currenttimemillis //取到毫秒数,并且执行效率高 new Date().getTime()没他精确

  2. Codeforces Round #543 (Div. 2) F dp + 二分 + 字符串哈希

    https://codeforces.com/contest/1121/problem/F 题意 给你一个有n(<=5000)个字符的串,有两种压缩字符的方法: 1. 压缩单一字符,代价为a 2 ...

  3. n维向量空间W中有子空间U,V,如果dim(U)=r dim(V)=n-r U交V !={0},那么U,V的任意2组基向量的组合必定线性相关

    如题取U交V中的向量p (p!=0), 那么p可以由 U中的某一组基线性组合成(系数不全是零),同时,-p也可以由V中的某一组基线性组合成(系数不全为零) 考察p+(-p)=0 可知道,U中的这组基跟 ...

  4. flask 知识积累

    PythonWEB框架之Flask Flask快速入门,知识整理 Flask 框架

  5. Win7 VS2013环境编译boost1_58_0

    备忘,发现好多不常用的东西不记笔记再想用要重新花时间找,所以试着开始记笔记,写入博客吧. 首先去官网下最新的版本 http://www.boost.org/ 写本文时boost最新版本为1_58_0, ...

  6. Keepalived+Nginx高可用架构配置

    1.yum install -y libnfnetlink-devel2.yum -y install libnl libnl-devel 3.yum -y install openssl-devel ...

  7. Linux centos 连接网络

    1.在安装过程中不要选择网络适配器,其他正常执行 2.编辑 [root@zb ~]# vi /etc/sysconfig/network-scripts/ifcfg-eth0 一般安装完软件,打开et ...

  8. 1.8.3suspend与resume方法的缺点--不同步

    package com.cky.bean; /** * Created by edison on 2017/12/3. */ public class MyObject { private Strin ...

  9. 【python-crypto】导入crypto包失败的情况,怎么处理

    [python-crypto]导入crypto包失败的情况,怎么处理 是因为你自己安装的python的版本太高,所以自己降版本吧,捣鼓了一下午 pip install crypto pip insta ...

  10. 如何更好地使用Java 8的Optional

    Java 8中的Optional<T> 是一个可以包含或不可以包含非空值的容器对象,在 Stream API中很多地方也都使用到了Optional. java中非常讨厌的一点就是nullp ...