容器云系列之Docker管理工具Docker Machine

Docker-compose和Docker machine是Docker容器管理的工具,本文简单介绍了Docker machine的使用,加深对Docker管理的理解。


2、Docker Machine
2.1 Docker Machine简介

Docker Machine可以在虚拟主机上安装Docker,并可以使用docker-machine命令来管理主机。使用docker-machine命令,可以启动、检查、停止和重新启动托管主机,也可以升级Docker客户端和守护程序,以及配置Docker客户端与主机进行通信。
在这里插入图片描述

2.2 安装Dcoker Machine

1)安装docker-machine

[root@tango-01 tmp]# curl -L https://github.com/docker/machine/releases/download/v0.16.2/docker-machine-`uname -s`-`uname -m` -o /tmp/docker-machine
[root@tango-01 tmp] chmod +x /tmp/docker-machine
[root@tango-01 tmp] sudo cp /tmp/docker-machine /usr/local/bin/docker-machine

2)查看docker-machine版本:

[root@tango-01 /]# docker-machine version
docker-machine version 0.16.2, build bd45ab13
2.3 Docker Machine使用
  • 系统:Win10
  • 虚机:VMware Workstation 12
  • 虚机系统:Centos7.0
  • Docker:19.03.13
  • Driver:VirtualBox 6.1

1)安装virtualbox

#更新yum源
[root@tango-01 yum.repos.d]# vi /etc/yum.repos.d/virtualbox.repo 
[virtualbox]
name=Oracle Linux / RHEL / CentOS-$releasever / $basearch - VirtualBox
baseurl=http://download.virtualbox.org/virtualbox/rpm/el/$releasever/$basearch
enabled=1
gpgcheck=1
repo_gpgcheck=1
gpgkey=https://www.virtualbox.org/download/oracle_vbox.asc
#安装VirtualBox
[root@tango-01 yum.repos.d]# yum update
[root@tango-01 yum.repos.d]# yum install VirtualBox-6.1

2)列出可用的机器

[root@tango-01 /]# docker-machine ls
NAME   ACTIVE   DRIVER   STATE   URL   SWARM   DOCKER   ERRORS

3)创建一台名为 test 的机器,driver使用virtualbox

Driver的选择可以参考官网:https://docs.docker.com/machine/drivers/

[root@tango-01 /]# docker-machine create --driver virtualbox mymachine
Running pre-create checks...
Error with pre-create check: "This computer doesn't have VT-X/AMD-v enabled. Enabling it in the BIOS is mandatory"

需开启虚拟化选项,同时内存设置至少为2G
在这里插入图片描述
执行如下命令创建:

[root@tango-01 ~]# docker-machine create --driver virtualbox mymachine
[root@tango-01 cache]# docker-machine create --driver virtualbox mymachine
Running pre-create checks...
(mymachine) Unable to get the latest Boot2Docker ISO release version:  Get https://api.github.com/repos/boot2docker/boot2docker/releases/latest: EOF
Creating machine...
(mymachine) Copying /root/.docker/machine/cache/boot2docker.iso to /root/.docker/machine/machines/mymachine/boot2docker.iso...
(mymachine) Creating VirtualBox VM...
(mymachine) Creating SSH key...
(mymachine) Starting the VM...
(mymachine) Check network to re-create if needed...
(mymachine) Waiting for an IP...
Waiting for machine to be running, this may take a few minutes...
Detecting operating system of created instance...
Waiting for SSH to be available...
Detecting the provisioner...
Provisioning with boot2docker...
Copying certs to the local machine directory...
Copying certs to the remote machine...
Setting Docker configuration on the remote daemon...
Checking connection to Docker...
Docker is up and running!
To see how to connect your Docker Client to the Docker Engine running on this virtual machine, run: docker-machine env mymachine
[root@tango-01 cache]# docker-machine ls
NAME        ACTIVE   DRIVER       STATE     URL                         SWARM   DOCKER      ERRORS
mymachine   -        virtualbox   Running   tcp://192.168.99.100:2376           v19.03.12

注:可以下载boot2docker.iso文件到目录/root/.docker/machine/cache/,下载地址为https://github.com/boot2docker/boot2docker/releases/download/v19.03.12/boot2docker.iso

3)查看机器的ip

[root@tango-01 cache]# docker-machine ip mymachine
192.168.99.100

4)停止机器

[root@tango-01 cache]# docker-machine stop mymachine
Stopping "mymachine"...
Machine "mymachine" was stopped.
[root@tango-01 cache]# docker-machine ls
NAME        ACTIVE   DRIVER       STATE     URL   SWARM   DOCKER    ERRORS
mymachine   -        virtualbox   Stopped                 Unknown

5)启动机器

[root@tango-01 cache]# docker-machine start mymachine
Starting "mymachine"...
(mymachine) Check network to re-create if needed...
(mymachine) Waiting for an IP...
Machine "mymachine" was started.
Waiting for SSH to be available...
Detecting the provisioner...
Started machines may have new IP addresses. You may need to re-run the `docker-machine env` command.
[root@tango-01 cache]# docker-machine ls
NAME        ACTIVE   DRIVER       STATE     URL                         SWARM   DOCKER      ERRORS
mymachine   -        virtualbox   Running   tcp://192.168.99.100:2376           v19.03.12
[root@tango-01 cache]# docker-machine env mymachine
export DOCKER_TLS_VERIFY="1"
export DOCKER_HOST="tcp://192.168.99.100:2376"
export DOCKER_CERT_PATH="/root/.docker/machine/machines/mymachine"
export DOCKER_MACHINE_NAME="mymachine"
# Run this command to configure your shell: 
# eval $(docker-machine env mymachine)

6)进入机器

[root@tango-01 cache]# docker-machine ssh mymachine
   ( '>')
  /) TC (\   Core is distributed with ABSOLUTELY NO WARRANTY.
 (/-_--_-\)           www.tinycorelinux.net

docker@mymachine:~$

7)docker-machine 命令参数说明

docker-machine active:查看当前激活状态的 Docker 主机。
config:查看当前激活状态 Docker 主机的连接信息。
creat:创建 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: 显示帮助信息

参考资料:

  1. https://docs.docker.com/machine/overview/

转载请注明原文地址:https://blog.csdn.net/solihawk/article/details/121485052
文章会同步在公众号“牧羊人的方向”更新,感兴趣的可以关注公众号,谢谢!
在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值