前言

docker-machine可以用来集中管理多个docker主机。

本文准备两台linux机器进行测试,172.16.10.151和172.16.10.153


一、安装docker

在172.16.10.151案追昂docker

参考 docker学习(一)安装

二、安装docker-machine

在172.16.10.151安装docker-machine

下载:

curl -L https://github.com/docker/machine/releases/download/v0.16.0/docker-machine-$(uname -s)-$(uname -m) > ./docker-machine	

移动:

mv ./docker-machine /usr/local/bin/docker-machine

添加权限:

chmod +x /usr/local/bin/docker-machine

查看版本

docker-machine --version

docker-machine version 0.16.0, build 702c267f

三、配置互信

使用ssh-keygen方式生成秘钥,最终汇总到/root/.ssh/authorized_keys

四、测试

(1)在172.16.10.151执行

docker-machine create  --driver generic --generic-ip-address 172.16.10.153 k8s-node02

(2)设置环境变量

docker-machine env k8s-node02

在这里插入图片描述

根据结果提示,执行

eval $(docker-machine env k8s-node02)

(3)查看

docker-machine ls

在这里插入图片描述
(4)进入172.16.10.153

docker-machine ssh k8s-node02

(5)查看k8s-node02上的docker版本

docker --version

在这里插入图片描述
可以看出,docker已经自动安装好

(6)在k8s-node02拉取镜像并启动容器

	docker pull nginx
	
	docker run -d --name nginx_test nginx

通过docker images和docker ps 查看镜像和容器

在这里插入图片描述
(7)在k8s-master上,同样执行docker images和docker ps

将看到相同的结果

在这里插入图片描述

五、常用命令

config:查看当前激活状态 Docker 主机的连接信息。
create:创建 Docker 主机
env:显示连接到某个主机需要的环境变量
inspect: 以 json 格式输出指定Docker的详细信息
ip: 获取指定 Docker 主机的地址
kill: 直接杀死指定的 Docker 主机
ls: 列出所有的管理主机
provision: 重新配置指定主机
regenerate-certs: 为某个主机重新生成 TLS 信息
restart: 重启指定的主机
rm: 删除某台 Docker 主机,对应的虚拟机也会被删除
ssh: 通过 SSH 连接到主机上,执行命令
scp: 在 Docker 主机之间以及 Docker 主机和本地主机之间通过 scp 远程复制数据
mount: 使用 SSHFS 从计算机装载或卸载目录
start: 启动一个指定的 Docker 主机,如果对象是个虚拟机,该虚拟机将被启动
status: 获取指定 Docker 主机的状态(包括:Running、Paused、Saved、Stopped、Stopping、Starting、Error)等
stop: 停止一个指定的 Docker 主机
upgrade: 将一个指定主机的 Docker 版本更新为最新
url: 获取指定 Docker 主机的监听 URL
version: 显示 Docker Machine 的版本或者主机 Docker 版本
help: 显示帮助信息
Logo

K8S/Kubernetes社区为您提供最前沿的新闻资讯和知识内容

更多推荐