![](https://img-blog.csdnimg.cn/20201014180756738.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Docker
进京
这个作者很懒,什么都没留下…
展开
-
(一) Docker 安装
(一) Docker 安装到目前为止在Linux上安装Docker最好的方式是通过Docker提供的安装脚本,同时大多数主流的Linux版本都有自己的包,但他们都落后于Docker发行版本。Docker安装要求Docker没什么太多要求,但你需要运行3.10或以上的内核,你可以通过uname -r命令来检查。如果你在使用RHEL或CentOS,你需要版本7或以后的。Docker安装我们这里使用的是原创 2016-03-10 16:24:27 · 582 阅读 · 0 评论 -
Docker 网络(十四)——Weave for Docker
14 Weave for DockerWeave 是由Weaveworks针对Docker网络管理开发的,类似于Flannel, Calico 和 Docker重叠网络。Weave处理Docker多主机网络并且管理Docker不同主机上的网络合并,跟另外三种方案相比,weave提供更多特性和选择。Weave简介Weave创建一个虚拟网络,跨多台主机连接Docker。在不同主机上的Docker能够互相翻译 2016-06-14 12:07:28 · 2336 阅读 · 0 评论 -
Docker 网络(十三)—— Calico for Docker
13 Calico for DockerCalico 简介Calico是一个纯三层的协议,为OpenStack虚机和Docker容器提供多主机间通信。Calico不使用重叠网络比如flannel和libnetwork重叠网络驱动,它是一个纯三层的方法,使用虚拟路由代替虚拟交换,每一台虚拟路由通过BGP协议传播可达信息(路由)到剩余数据中心。环境准备两台Linux节点(Node1:192.168.5翻译 2016-06-14 12:06:34 · 6253 阅读 · 0 评论 -
Docker 网络(十二)——Flannel for Docker
12 Flannel for DockerFlannel,类似于Calico,VXLAN和Weave,为Docker提供一种可配置的虚拟重叠网络。Flannel在每一台主机上运行一个 agent, flanneld,负责在提前配置好的地址空间中分配子网租约。Flannel使用etcd来存储网络配置。我们看一下Flannel GitHub上的图来描述在重叠网络中数据库传输的细节 。 下载运行Etcd翻译 2016-06-14 12:05:29 · 4148 阅读 · 0 评论 -
Docker 网络(十一)——Docker Multi-host Network
11 Docker Multi-host NetworkDocker 多主机网络使用基于VXLAN解决方案在libnetwork和libkv库的基础上,所以这个重叠网络需要一个有效的键-值存储服务在不同docker间交换信息。Docker执行内建的在libnetwork库中基于VXLAN重叠网络驱动来支持不同主机间大范围的虚拟网络。环境准备 在用Docker重叠网络前,检查docker版本使用do翻译 2016-06-14 12:02:11 · 3431 阅读 · 0 评论 -
Docker 网络(十)——Docker主机间创建GRE Tunnel
10 Docker主机间创建GRE Tunnel准备两台安装Docker的主机,网络分配和拓扑如下: 停止Docker进程,删除网桥docker0ubuntu@ubuntu:~$ sudo suroot@ubuntu:/home/ubuntu# service docker stopdocker stop/waitingroot@ubuntu:/home/ubuntu# ip link se翻译 2016-06-14 12:01:01 · 2091 阅读 · 0 评论 -
Docker 网络(九)——使用Open vSwitch代替默认的linux bridge
9 使用Open vSwitch代替默认的linux bridge安装OVS $ sudo apt-get -y install openvswitch-switch创建一个网桥 ubuntu@ubuntu:~$ sudo ovs-vsctl add-br ovs-testubuntu@ubuntu:~$ sudo ip link set ovs-test up启动一个不带网络的容器ubun翻译 2016-06-14 11:58:25 · 1576 阅读 · 0 评论 -
Docker 网络(八)——配置自定义的网桥
8 配置自定义的网桥关闭Docker进程,删除默认网桥 docker0,创建新的网桥 testbriubuntu@ubuntu:~$ sudo service docker stopdocker stop/waitingubuntu@ubuntu:~$ sudo ip link set docker0 downubuntu@ubuntu:~$ sudo brctl delbr docker0翻译 2016-06-14 11:57:31 · 1507 阅读 · 0 评论 -
Docker 网络(七)——使用pipework理解容器间网络
7 使用pipework理解容器间网络使用Pipework来手工创建Docker网络 首先启动一个不带网络的容器ubuntu@ubuntu:~$ docker run -it --rm --net none --name testbri ubuntu:14.04 bashroot@9149d27f1306:/# ip -d link show1: lo: <LOOPBACK,UP,LOWER_翻译 2016-06-14 11:56:32 · 4442 阅读 · 0 评论 -
Docker 网络(六)——配置Docker进程 IP表和IP转发
6 配置Docker进程 IP表和IP转发默认Docker开启ip转发并自动设置iptables规则,如果我们希望改变这种行为,可以在启动Docker时修改如下选项 --ip-forward=false, --iptables=false Ubuntu/Debian系统编辑 /etc/default/docker (CentOS/RHEL编辑 /etc/sysconfig/docker)ubu翻译 2016-06-14 11:55:36 · 2322 阅读 · 0 评论 -
Docker 网络(四)——Docker 容器网络
ubuntu@ubuntu:~$ ip -d link show1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN mode DEFAULT group default link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00 promiscuity 0翻译 2016-06-14 11:52:33 · 879 阅读 · 0 评论 -
Docker 网络(三)——容器间互访 link
启动三个容器,一个web,一个负载,一个数据库ubuntu@ubuntu:~$ docker run -d --name database -e MYSQL_ROOT_PASSWORD=root mysql9c2fe720d39d2a504032c40b50cbce1434d90d0360e53836ffcba3f9b71d8c37ubuntu@ubuntu:~$ docker run -d -翻译 2016-06-14 11:50:57 · 1620 阅读 · 0 评论 -
Docker 网络(二)——发布容器端口
启动一个容器 $ docker run -d -P --name web runseb/hostname查看容器开放的端口 $ docker port web 5000/tcp -> 0.0.0.0:32771通过本地主机访问 $ curl http://localhost:32771 this is not working:2d537350d7df访问容器内部地址 $ curl ht原创 2016-06-14 11:47:14 · 857 阅读 · 0 评论 -
Docker 网络(一)——查看Docker Container IP
启动一个容器 $ docker run -itd --name ubuntu -h ubuntu ubuntu:14.041. $ docker inspect --format '{{.NetworkSettings.IPAddress}}' ubuntu 172.17.0.22. $ docker exec -it ubuntu ip addr | grep global in原创 2016-06-14 11:44:34 · 5025 阅读 · 0 评论 -
(四)制作一个nginx 的Docker镜像
我们在ubuntu 14.04镜像基础上创建一个nginx镜像,用来发布一个静态页面。创建一个目录ubuntu@ubuntu:~$ mkdir nginxubuntu@ubuntu:~$ cd nginxubuntu@ubuntu:~/nginx$ touch Dockerfile编辑Dockerfileubuntu@ubuntu:~/nginx$ vim Dockerfile FROM ub原创 2016-03-11 17:39:57 · 3297 阅读 · 0 评论 -
(三)镜像、容器 和 联合文件系统(Union File System)
为了理解镜像和容器两者的关系,我们需要解释一项Docker的关键技术——UFS(有时简称为union mount)。Union文件系统允许多个文件系统堆叠,在用户看来是一个单独的文件系统。目录中可能包含来自多个文件系统的文件,但是如果两个文件有相同的路径,最后挂载的文件将隐藏之前的文件。Docker支持几种不同的UFS实现,包括AUFS、Overlay、devicemapper、BTRFS和ZFS。原创 2016-03-11 11:57:38 · 2692 阅读 · 0 评论 -
(二)Docker run 运行第一个容器
获取一个镜像Docker是通过加载镜像来运行的,镜像可以自己制作,也可以 从Docker Hub上获取,Docker Hub是Docker官方的Registry(镜像管理系统),https://hub.docker.com/ 可以自己到官网查看。从官网获取镜像比较慢,我们也可以自己搭建Registry,这个我们后面会讲到。我们先看一下如何从Docker Hub上获取一个镜像。ubuntu@ubunt原创 2016-03-11 10:45:29 · 4048 阅读 · 0 评论 -
Docker 网络(五)——容器网络命名空间
5 容器网络命名空间ubuntu@ubuntu:~$ docker network ls NETWORK ID NAME DRIVER0343830c6572 bridge bridge de6616e5b5e4 host host翻译 2016-06-14 11:53:48 · 1405 阅读 · 0 评论