服务管理
# 这个或许不用多说,docker服务本身运行在linux上,利用liinux本身的服务管理即可
# 启动
sudo service docker start
# 状态
sudo service docker status
# 关闭
sudo service docker stop
#重启
sudo service docker restart
访问模式
# 之前说过,服务端运行,客户端指令
# 现在就说说客户端和服务端的交流方式把
# 通过 -H 选项指定连接交流方式,支持如下三种方式
-H tcp://host:port
-H unix://path/to/socket # 默认方式
-H fd://*
-H fd://socketfd
# 后两个归为一类
# 后面再仔细说配置
开启远程
# 是否支持远程,关键看启动参数
# 1. 配置文件
vim /etc/default/docker
# 2. 关键参数
DOCKER_OPTS="..."
# 3. 配置名称
DOCKER_OPTS="label name=remote_1"
# label后面是属性键值对,只要是配置都可以写在DOCKER_OPTS中
# 4. 配置远程
DOCKER_OPTS="labelname=remote_1 -H tcp://0.0.0.0:2375"
# 这里0.0.0.0会自动绑定宿主机ip
# 一般docker常使用2375端口
# 5. 服务重启
sudo service docker restart
远程访问
# rest访问
curl http://ip:port/info
# rest方式,指定ip:port后,后面的api形式就是一般的常用指令
#docker-client方式
docker -H tcp://ip:port info
# 指定为远程访问,并填写远程访问地址
# 抛开远程指定,操作和单机没区别
# 最熟悉的还是client模式,不过有点长
export DOCKER_HOST="tcp://ip:port"
# 添加DOCKER_HOST环境变量,然后就可以直接运行docker了
docker info
# 此时,该服务器上的客户端和服务端就分离了
# 客户端的连接对象可变,本身就是这样,两者的确是不一定的对应关系
# 如果想连接本机
export DOCKER_HOST=""
# 默认就是连接本机的
双端支持
# 退回到开启远程的docker服务端
docker info
# 居然会报错
# 当然了,配置DOCKER_HOST也能轻松解决,但是未免太没意思
vim /etc/default/docker
DOCKER_OPTS="label name=remote_server -H tcp://0.0.0.0:2375 -H ..."
# 恩。。。具体参数我就不说了
# 主要是想说-H可以支持多个配置
# 当配置了远程访问时,本机访问有些问题
# 为此,可以
1. 配置 export DOCKER_HOST
2. 多配置一个 -H
影响
可以在代码里面调用docker-api啊,这个不论开发,运维,监控还是新建都必须是很强大