Docker Machine
Docker Machine 是 Docker 官方编排(Orchestration)项目之一,
负责在多种平台上快速安装 Docker 环境。
Docker Machine支持在常规Linux操作系统、
虚拟化平台、openstack、
公有云等不同环境下安装配置docker host。
Docker Machine 项目基于 Go 语言实现,
目前在 Github 上的维护地址: https://github.com/docker/machine/
Docker Machine实践:创建machine
machine
指的是docker daemon主机
,其实就是在host上安装和部署docker。
1.
创建machine要求免密登陆远程主机:
ssh-keygen
ssh-copy-id 目标ip
2
创建主机:(离线安装需要在目标主机提前安装好docker软件包)
#docker-machine create --driver generic --generic-ip-address=172.25.10.2 server2
创建流程:
ssh免密登陆远程主机
安装docker软件包
复制证书
配置docker daemon
启动docker
创建示例1: server2主机已经安装了docker-ce
1服务端上安装docker-machine命令
2ssh免密登陆远程主机
3创建主机(server2主机上已经安装了docker-ce)
创建的时候时间有点长
4可以看到在server2端已经打开了2376端口
5 docker主机上生成的配置文件:如下 述配置文件中可以看出,docker daemon启用了TLS验证功能,docker-machine已经为其生成好了所需的证书文件。
6查看主机
管理machine:
连接远程docker主机时需要执行以下命令,但不方便:
docker `docker-machine config server2` ps
安装bash脚本,使得行提示符更加的人性化:
docker-machine env server2 显示访问server2所需的环境变量:
根据提示执行:eval $(docker-machine env server2),可以直接切入目标主机。
创建示例二:server3(未安装docker-ce的主机) (脚本安装docker-ce 创建主机的时候指定)
172.25.10.250主机(真机:作为安装源)
已经安装好httpd
mkdir /var/www/html/docker-ce
cd /var/www/html
wget https://get.docker.com
下载下来的加本就是用来安装docker-ce
vim get-docker.sh
修改脚本里面如下两处内容。yum源在真机中搭建好,
将rpm全部安装好之后,yum install createrepo createrepo . 搭建yum仓库
在安装的时候有repodata目录才能读到
如案例一:ssh免密登陆远程主机`
创建主机的时候直接安装docker-ce
docker-machine 子命令:
docker-machine upgrade server2 | 更新docker版本 |
---|---|
docker-machine config server2 | 查看machine配置 |
docker-machine scp | 可以在machine中复制文件 |
docker-machine ssh | 连接machine |
docker-machine rm | 删除machine |