微服务03 Docker

微服务 server 推荐使用 Docker.

使用 Docker 可以让开发者封装他们的应用以及依赖包到一个可移植的容器中。然后发布到任意的 Linux 机器上. Docker 容器完全使用沙箱机制,彼此之间不会有任何接口。

Docker 和虚拟机的区别

虚拟机:应用程序是运行在操作系统上的,应用程序文件和操作系统文件相互交叉,导致虚拟机对操作系统有很高的依赖。一旦系统出现问题,虚拟机依赖的文件以及安全补丁都可能出现文件丢失。

Docker 中的容器是基于进程隔离的,多个容器可以共享单个内核,并且创建Docker容器的镜像所需要的配置不依赖宿主主机系统。

所以 Docker 的可移植性要比虚拟机好, 对宿主系统的依赖也没有虚拟机(是虚拟机本身对操作系统的依赖, 这里说的不是application)那么高.

Docker 中的网络 

默认 bridge(单主机互联) 和 overlay(可跨主机互联)

bridge: 与宿主主机通信. bridge 的概念

从图上可以看出,

container1 和 container2 可以通信.

container2 和 container3 可以通信.

container1 和 container3 可以通信. 

原文地址:https://www.cnblogs.com/moveofgod/p/12356008.html