Docker的网络类型

Docker安装后,默认会创建三种网络

$ docker network ls
NETWORK ID NAME DRIVER SCOPE
6bdc00ad2a8d bridge bridge local
e373574073e9 host host local
d3d47c52f57b none null local

Docker启动的时候,可以使用--network参数指定使用的网络

$ docker run -itd --name test1 --network bridge --ip 172.17.0.2 tomcat

网络类型的介绍

  • bridge: 默认情况下启动的Docker容器,都是使用 bridge,Docker安装时创建的桥接网络,每次Docker容器重启时,会按照顺序获取对应的IP地址,这个就导致重启下,Docker的IP地址就变了
  • host:Docker 容器的网络会附属在主机上,两者是互通的。
  • none: docker 容器就不会分配局域网的IP

创建自定义网络并设置固定IP

在搭建一些集群软件的时候,组件和组件之间需要进行网络通信,这个时候如果每次重启IP都发生变化会很不方便,因此希望能够将容器的IP固定下来,这也是可以实现的,具体参考下面的方法。

1.创建自定义网络

$ docker network create --subnet=172.18.0.0/16 es-network
1e3e1eb702176df3e44111970292deaf5def7564135439fae21be489d6a8dcef
$ docker network ls
NETWORK ID NAME DRIVER SCOPE
6bdc00ad2a8d bridge bridge local
1e3e1eb70217 es-network bridge local
e373574073e9 host host local
d3d47c52f57b none null local

2.创建Docker容器

docker run -e ES_JAVA_OPTS="-Xms256m -Xmx256m" -d -p 9202:9202 -p 9302:9302 -v ~/Projects/elk/elk-cluster/data3/es3.yml:/usr/share/elasticsearch/config/elasticsearch.yml -v ~/Projects/elk/elk-cluster/data3:/usr/share/elasticsearch/data --name ES03 --net=es-network --ip=172.18.0.12 --hostname=es-node3 docker.elastic.co/elasticsearch/elasticsearch:6.7.0

使用docker inspect container-id可以看到当前容器分配的IP就是固定IP了。

Docker实现容器具有固定IP的更多相关文章

  1. 为Docker容器配置固定IP

    当docker以桥接的方式启动容器时,容器内部的IP是经过DHCP获取的,例如:172.17.0.8/32,且每重启依次IP都会发生变动.某些特殊的情况下,需要容器内有自己固定的一个内部IP.我的实现 ...

  2. 利用pipework为docker容器设置固定IP

    今天介绍如何在redhat/centos7系列机器上使用pipework为docker启动的容器指定一个固定ip,我们知道默认情况下,docker会使用 bridge网络模式为每一个启动的容器动态分配 ...

  3. 转:为Docker容器设置固定IP实现网络联通(1)——通过Pipework为Docker容器设置

    https://blog.csdn.net/chinagissoft/article/details/51250839 1. 创建并启动一个容器: docker run --cap-add=NET_A ...

  4. docker查看容器的网络ip

    docker inspect -f '{{range .NetworkSettings.Networks}}{{.IPAddress}}{{end}}' container_name_or_id 可直 ...

  5. 为docker配置固定ip

    docker默认使用bridge模式,通过网桥连接到宿主机,而容器内部的ip则从网桥所在的ip段取未用的ip.这样做一个不方便的地方在于容器内部的ip不是固定的,想要连接容器时只能通过映射到宿主机的端 ...

  6. Docker 配置固定IP及桥接的实现方法(转载)

    这篇文章主要介绍了Docker 配置固定IP和桥接的实现方法的相关资料,这里详细介绍了Docker 的四种网络模式及如何实现桥接的案例,需要的朋友可以参考下 docker默认使用bridge模式,通过 ...

  7. 为docker容器设置独立ip

    docker 1.12使用新版macvlan设置与宿主机同网段ip ****************************************** 由于开发的一些特殊需求,需要将容器部署在与宿主 ...

  8. 为Docker容器指定自定义网段的固定IP/静态IP地址

    第一步:创建自定义网络 备注:这里选取了172.172.0.0网段,也可以指定其他任意空闲的网段 docker network create --subnet=172.172.0.0/16 docke ...

  9. docker设置容器固定ip

    docker安装后,默认会创建三种网络类型,bridge.host和none,可通过如下命令查看 sudo docker network ls 1 bridge:网络桥接 默认情况下启动.创建容器都是 ...

随机推荐

  1. nginx反向代理uwsgi django服务器搭建总结

    1.安装python.django.虚拟环境 参考帖子:安装python django https://blog.csdn.net/a249900679/article/details/5152720 ...

  2. mysql配置完半同步复制之后报错[ERROR] The server quit without updating PID file

    修改配置,MySQL启动报:[ERROR] The server quit without updating PID file [root@localhost mysql]# /etc/init.d/ ...

  3. scrapy 基础使用以及错误方案

    原先用的是selenium(后面有时间再写),这是第一次使用scrapy这个爬虫框架,所以记录一下这个心路历程,制作简单的爬虫其实不难,你需要的一般数据都可以爬取到. 下面是我的目录,除了main.p ...

  4. spring cloud (二、服务注册安全demo_eureka)

    spring cloud (一.服务注册demo_eureka) 加强服务的安全性,我们接下来加上访问的账号密码: 首先需要添加对应的依赖 <!--账号密码认证依赖--> <depe ...

  5. 057 Java中kafka的Producer程序实现

    1.需要启动的服务 这里启动的端口是9092. bin/kafka-console-consumer.sh --topic beifeng --zookeeper linux-hadoop01.ibe ...

  6. day 35 协程与gil概念

    博客链接: http://www.cnblogs.com/linhaifeng/articles/7429894.html 今日概要: 1 生产者消费者模型(补充) 2 GIL(进程与线程的应用场景) ...

  7. anaconda源配置

    1. 生成配置文件 第一次运行 conda config命令时,将会在用户的home目录创建该文件..condarc配置文件,是一种可选的(optional)运行期配置文件,其默认情况下是不存在的. ...

  8. JVM 调优-给你的java应用看看病

    目录 java 应用 1 cpu 负载过高 1.1 分析问题 1.2 解决方案 2 内存占用过多 2.1 从内存回收方面 2.2 从代码层面 java 应用 1 cpu 负载过高 1.1 分析问题 首 ...

  9. C#-常用知识点

    1.日期相关 获取英文月份名称 : DateTime.Now.ToString("MMMM") 1.1 各个字母所代表的意思 1.MM:月份 2.mm:分钟 3. MMMM:文字形 ...

  10. ELK日志分析方案

    针对公司项目微服务化,随着项目及服务器的不断增多,决定采用ELK(Elasticsearch+Logstash+Kibana)日志分析平台进行微服务日志分析. 1.ELK整体方案 1.1 ELK架构图 ...