美文网首页Docker
5.Docker 网络管理

5.Docker 网络管理

作者: 条子在洗澡 | 来源:发表于2019-03-28 15:22 被阅读0次
名称 版本
系统 CentOS Linux release 7.6.1810 (Core)
Docker version 1.13.1

查看docker网络

docker network list
-------------------------------------------------------
NETWORK ID          NAME                DRIVER              SCOPE
83a633e44192        bridge              bridge              local
b0efcae788f6        host                host                local
6c42f1ff8b6d        none                null                local
-------------------------------------------------------
docker network inspect bridge
[
    {
        "Name": "bridge",
        "Id": "83a633e4419213412e767ce82070234ff57f689e34bc1ee9699e660f80240358",
        "Created": "2019-03-27T03:53:28.457676544-04:00",
        "Scope": "local",
        "Driver": "bridge",
        "EnableIPv6": false,
        "IPAM": {
            "Driver": "default",
            "Options": null,
            "Config": [
                {
                    "Subnet": "172.17.0.0/16",
                    "Gateway": "172.17.0.1"
                }
            ]
        },
        "Internal": false,
        "Attachable": false,
        "Containers": {      "6770ed441f606f3c87c666d6d986894af52cf1616cb77362be78261330121932": {
                "Name": "db",
                "EndpointID": "5191ba213ce5b7246fe61a7f4860214bc3b31b43b6ebbfdda29f5f7bb299d1e5",
                "MacAddress": "02:42:ac:11:00:04",
                "IPv4Address": "172.17.0.4/16",
                "IPv6Address": ""
            },
"71ed148515b1ad56412a4b37cb708f219827cc80442fc84f1c5585316967fc15": {
                "Name": "c1",
                "EndpointID": "cb5726a91d25c9ebc686103cca82c9369b7631a9c9ece475b89abca62ab8e3bd",
                "MacAddress": "02:42:ac:11:00:03",
                "IPv4Address": "172.17.0.3/16",
                "IPv6Address": ""
            },  "fb160b5754a1ef265f3d27fe69e657734a520d49311ea60866f6b5d530f19410": {
                "Name": "web",
                "EndpointID": "2c4aec086a20b278ccae70db3314ea39bce770b65906a3e463b85aa01713d026",
                "MacAddress": "02:42:ac:11:00:02",
                "IPv4Address": "172.17.0.2/16",
                "IPv6Address": ""
            }
        }
    }
]
-------------------------------------------------------

查看,创建,删除,docker网络

#查看docker帮助
mandb  #初始化帮助文档
man -k docker
man docker-network-create
#获取到docker-network-create的参数如下
$ docker network create \
                --driver=bridge \
                --subnet=172.28.0.0/16 \
                --ip-range=172.28.5.0/24 \
                --gateway=172.28.5.254 \
                br0

#创建网络
docker network create -d bridge --subnet=10.0.0.0/24 mynet
#查看网络
docker network list
NETWORK ID          NAME                DRIVER              SCOPE
83a633e44192        bridge              bridge              local
b0efcae788f6        host                host                local
4ffa318642bf        mynet               bridge              local
#容器使用自己创建的网络
docker run --net=mynet --rm -it centos /bin/bash

#删除网络
docker network rm mynet

物理机和容器端口映射

docker run -dit --restart=always --name=db2 -p 物理机端口:容器端口 -v /db:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=redhat mysql 

docker run -dit --restart=always --name=db2 -p 容器端口 -v /db:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=redhat mysql (物理机端口随机分配)

练习1,通过ip 让两个容器通信

#wordpress+mysql 搭建个人论坛
#临时关闭selinux
setenforce 0
#下载镜像
docker pull hub.c.163.com/library/wordpress:latest
docker pull hub.c.163.com/library/mysql:latest
#镜像重命名
docker tag hub.c.163.com/library/wordpress wordpress
docker tag hub.c.163.com/library/mysql mysql

#创建数据容器
docker run -dit --restart=always --name=db -v /db:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=redhat -e MYSQL_DATABASE=blog mysql
#查看数据库容器ip地址
docker exec -it db ip a
#创建wordpress并连接到mysql
docker run -dit --restart=always --name=blog -v /web:/var/www/html -p 80:80 -e WORDPRESS_DB_HOST=172.17.0.2 -e WORDPRESS_DB_USER=root -e WORDPRESS_DB_PASSWORD=redhat -e WORDPRESS_DB_NAME=blog wordpress
#测试
curl ip (web容器所在的物理机ip地址)

练习2,通过容器别名绑定的方式 让两个容器通信(--link 容器别名:镜像名)

#创建数据容器
docker run -dit --restart=always --name=db -v /db:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=redhat -e MYSQL_DATABASE=blog mysql
#查看数据库容器ip地址
docker exec -it db ip a
#创建wordpress并连接到mysql(blog容器中并没有制定用户名,密码等信息,但是--link参数会将db中已经设置好的信息赋予blog容器,所以可以直接使用)
docker run -dit --restart=always --name=blog -v /web:/var/www/html -p 80:80 --link db:mysql wordpress

相关文章

  • 三.准备工作

    3.1.端口转发 3.2.关闭网络管理服务 3.3.hosts 3.4.iptables 5.docker官网安装...

  • 5.Docker 网络管理

    查看docker网络 查看,创建,删除,docker网络 物理机和容器端口映射 练习1,通过ip 让两个容器通信 ...

  • 计算机网络技术(七)——网络管理技术

    摘要 网络管理概述 网络管理的体系结构与模式 网络管理的功能 简单网络管理协议(SNMP) 一、网络管理概述 网络...

  • 【网络管理】网络管理基础

    网络管理基础 网络管理系统体系结构 网络管理系统层次结构 网络管理系统处于应用层 ,使用了硬件,OSI 参考模型,...

  • 5.Docker Swarm部署

    1.关闭防火墙 2.初始化集群 主节点 3.添加节点 4.token操作 5.查看集群列表 6.新建服务 7.其他...

  • 19-03 Adaptive AUTOSAR 架构概述(12)-

    12 网络管理 12.1 网络管理算法概述 AUTOSAR NM是基于分散的网络管理策略的,意味这每个网络节点根据...

  • unity官方内置网络unet的实例教程(二)

    网络管理 在本课中,我们将新创建一个网络管理器。该网络管理器将控制该项目的网络状态,包括游戏状态管理,生成点管理,...

  • 5.5网络管理概述

    网络管理功能 网络管理就是通过某种方式对网络进行管理,是网络能正常高效地运行,让网络中的资源得到更加有效的利用。网...

  • 凡事都有个先来后到,网络中最早的管理功能是“谁”?

    配置管理是网络管理中最早出现的,也是网络中最基本的管理功能。配置管理主要负责监测和控制网络的配置状态,就是在网络建...

  • 网络管理

    OSI七层模型 它是一个由国际标准化组织?提出的概念模型,试图提供一个使各种不同的计算机和网络在世界范围内实现互联...

网友评论

    本文标题:5.Docker 网络管理

    本文链接:https://www.haomeiwen.com/subject/vwmzvqtx.html