docker-machine教程

一、docker-machine

docker-machine 安装,在最新版docker engine版本中,Docker Desktop for Mac and Docker Desktop for Windows,都包含了docker-machine组件。不必单独安装,当然这只是针对最新版的windows10系统,对应以前的系统版本,使用Docker Toolbox 

  • Docker Desktop for Mac - mac可以创建以virtualbox为驱动的虚拟化环境
  • Docker Desktop for Windows -  windows下可使用hyperv 

使用 DOCKER DESKTOP FOR WINDOWS

安装条件:Docker Desktop for Windows,Hyper-V 驱动安装

使用 DOCKER DESKTOP FOR MAC

安装条件:安装最新的virtualbox

 

使用machine运行容器:

1.创建docker虚拟机器

2.切换环境到新的虚拟机器

3.使用docker客户端进行创建管理容器

 

docker-machine创建虚拟机,并在虚拟机上安装好docker engine环境,通过参数传递的方式:--virtualbox-boot2docker-url指定本地定制linux系统boot2docker.iso,没有的话,会从github下载,国内下载比较慢,费时。-d 表示虚拟机引擎,mac建议使用virtualbox,没有默认的虚拟机,就创建一个default

docker-machine create default -d virtualbox --virtualbox-boot2docker-url=/Users/linlong/.docker/machine/cache/boot2docker.iso

说明:该命令会下载轻量级linux系统boot2docker(Tiny Core Linux45M大小,启动飞快),该系统中已经安装好docker daemon程序,此时会调用virtualbox创建虚拟机。如果想自定义docker daemon程序,可以修改系统的/var/lib/boot2docker/profile文件,然后重启docker daemon。如:

docker-machine ssh default -t sudo vi /var/lib/boot2docker/profile

切换当前正在使用的虚拟机

使用docker-machine env 命令,在mac下输出:

$ docker-machine env default 
export DOCKER_TLS_VERIFY="1" 
export DOCKER_HOST="tcp://172.16.62.130:2376" 
export DOCKER_CERT_PATH="/Users//.docker/machine/machines/default" 
export DOCKER_MACHINE_NAME="default" 
# Run this command to configure your shell: 
# eval "$(docker-machine env default)"

然后使用 eval "$(docker-machine env default)" 命名进行切换,使用docker-machine ls列表中虚拟机名称带有“*”的为当前正在使用的虚拟机

 

在windows下输出:

λ docker-machine env default

SET DOCKER_TLS_VERIFY=1

SET DOCKER_HOST=tcp://192.168.99.100:2376

SET DOCKER_CERT_PATH=C:\Users\Administrator\.docker\machine\machines\default

SET DOCKER_MACHINE_NAME=default

SET COMPOSE_CONVERT_WINDOWS_PATHS=true

REM Run this command to configure your shell:

REM @FOR /f "tokens=*" %i IN ('docker-machine env default') DO @%i

然后使用 REM @FOR /f "tokens=*" %i IN ('docker-machine env default') DO @%i 命名进行切换

 

进入machine内部:

使用docker-machine ssh default进入shell环境

退出default虚拟机环境使用ctrl+D

帮助文档:https://segmentfault.com/a/1190000017001848

 

启用镜像加速服务:

阿里镜像加速器:

sudo mkdir -p /etc/docker
sudo tee /etc/docker/daemon.json <<-'EOF'
{
"registry-mirrors": ["https://l9lat09q.mirror.aliyuncs.com"]
}
EOF

sudo systemctl daemon-reload
sudo systemctl restart docker

在docker-machine创建的主机中,使用 /etc/init.d/docker restart

阿里镜像服务:https://cr.console.aliyun.com/cn-hangzhou/instances/mirrors

启用阿里云镜像加速:

docker-machine create test -d virtualbox --engine-registry-mirror=https://l9lat09q.mirror.aliyuncs.com

非常快

文档地址:https://cr.console.aliyun.com/cn-hangzhou/instances/mirrors

 

docker-machine命名列表:

docker-machine默认操作的是default主机,因此可以在操作主机时,可以不带主机名称。

docker-machine ip default :获取docker主机ip

docker-machine stop default : 停止docker主机

docker-machine start default : 启用docker主机

docker-machine rm default :删除docker主机

docker-machine env default : 获取主机环境变量

docker-machine inspect default :获取主机详细信息

docker-machine status default :获取主机运行状态

docker-machine ls :列出所有主机

docker-machine ssh default :进入docker主机内

查看更多使用帮助命令:docker-machine --help

你可能感兴趣的:(docker)