早期版本的Docker底层是基于成熟的LXC实现的,自Docker 0.9开始,Docker还引入libcontainer。

Docker底层依赖的核心技术主要包括:命名空间(Namespaces)、控制组(Control Groups)、联合文件系统(Union File System)、虚拟网络支持。

Docker采用C/S架构,客户端和服务端可以运行在一个机器,也可以通过socket或RESTful API进行通信。

Docker服务端

Docker daemon一般在宿主主机后台运行,作为服务端接受来自客户的请求,并处理这些请求(创建、运行、分发容器)。

Docker服务端默认监听本地的unix:///var/run/docker.sock 套接字,只允许本地的root用户访问。

可以通过-H选项修改监听方式,如监听本地的1234端口

docker -H 0.0.0.0:1234 -d &

Docker客户端

Docker客户端为用户提供一系列的可执行命令,客户端默认通过本地的unix:///var/run/docker.sock 套接字向服务端发送命令。

如果修改了服务端的监听端口,则需要配置-H参数指定连接

docker -H tcp://127.0.0.1:1234 version

results matching ""

    No results matching ""