Docker的C/S模式
User -> Client <-> Docker Server
Remote API
- RESTful风格的API
- STDIN、STDOUT、STDERR
User <-> 自定义程序(Client) <- Remote API -> Docker Server
Docker官方的Remote API Reference:
https://www.docker.com/reference/api/docker_remote_api/
Docker客户端与守护进程链接方式
Client通过Socket链接Docker守护进程,并且支持三种socker方式。
unix:///var/run/docker.sock 默认
tcp://host:port
fd://socketfd
User <- CLI/APP -> Docker Client <- socket -> Docker Server
Docker守护进程的配置和操作状态
查看守护进程
shell:ps -ef |grep docker shell:status docker
使用service命令管理进行docker的启动、暂行、重启
shell:service docker start shell:service docker stop shell:service docker restart
Docker守护进程的配置和操作模式
- Docker的启动选项
官方Docker Command line Reference:
http://docs.docker.com/reference/commandline/cli
docker -d [OPTIONS]
-d 守护模式运行 -D --Debug=false -e --exec-driver="native" -g --graph="/var/lib/docker" --icc=true -l --log-level="info" --lavel=[] -p --pidfile="/var/run/docker.pid" --label 标签。 在docker info中可以看到
Docker服务器链接相关
-G --group="docker" -H --host=[] 设置采用的socket方式 unix:///var/run/docker.sock 默认 tcp://host:port fd://socketfd --tls=false --tlscacert="/home/sven/.docker/ca.pem" --tlscert="/home/sven/.docker/cert.pem" --tlskey="/home/sven/.docker/key.pem" --tlsverify=false
RemotAPI相关
--api-enable-cors=false
存储相关
-s storage-driver="" --selinux-enabled-false --storage-opt=[]
Registry相关
--insecure-registry=[] --registry-mirror=[]
网络相关
-b --bridge="" --bip="" --fixed-cidr="" --fixed-cidr-v6="" --dns=[] --dns-search=[] --ip=0.0.0.0 --ip-forward=true --ip-masq=true --iptables=true --ipv6=false --mtu=0
Docker启动配置文件
path:/etc/default/docker
Docker的远程访问
远程访问要能区分服务器,并且保持Client与Server API版本一致
区分服务器可以通过修改守护进程启动选项来完成
客户端链接远程守护进程
docker -H tcp://ip:2375 [OPTIONS]
简化这一操作可使用docker提供的环境变量 DOCKER_HOST
当再次想链接本机时可设置DOCKER_HOST=”“来恢复shell:export DOCKER_HOST="tcp://ip:2375 [OPTIONS]"