安装 Docker Machine – 每天5分钟玩转 Docker 容器技术(45)
前面我们的实验环境中只有一个 docker host,所有的容器都是运行在这一个 host 上的。但在真正的环境中会有多个 host,容器在这些 host 中启动、运行、停止和销毁,相关容器会通过网络相互通信,无论它们是否位于相同的 host。
对于这样一个 multi-host 环境,我们将如何高效地进行管理呢?
我们面临的第一个问题是:为所有的 host 安装和配置 docker。
在前面我们手工安装了第一个 docker host,步骤包括:
安装 https CA 证书
添加 GPG key
添加 docker apt 源
安装 docker
可见步骤还是挺多的,对于多主机环境手工方式效率低且不容易保证一致性,针对这个问题,docker 给出的解决方案是 Docker Machine。
用 Docker Machine 可以批量安装和配置 docker host,这个 host 可以是本地的虚拟机、物理机,也可以是公有云中的云主机。
Docker Machine 支持在不同的环境下安装配置 docker host,包括:
常规 Linux 操作系统
虚拟化平台 VirtualBox、VMWare、Hyper-V
OpenStack
公有云 Amazon Web Services、Microsoft Azure、Google Compute Engine、Digital Ocean 等
Docker Machine 为这些环境起了一个统一的名字:provider。对于某个特定的 provider,Docker Machine 使用相应的 driver 安装和配置 docker host,如下图所示:
下面我们通过实验来学习 Docker Machine。
实验环境描述实验环境中有三个运行 Ubuntu 的 host。
我们将在 192.168.56.101 上安装 Docker Machine,然后通过 docker-machine 命令在其他两个 host 上部署 docker。
安装 Docker Machine官方安装文档在 https://docs.docker.com/machine/install-machine/
安装方法很简单,执行如下命令:
curl -L https://github.com/docker/machine/releases/download/v0.9.0/docker-machine-`uname -s`-`uname -m` /tmp/docker-machine
chmod +x /tmp/docker-machine
sudo cp /tmp/docker-machine /usr/local/bin/docker-machine
下载的执行文件被放到 /usr/local/bin 中,执行docker-mahine version 验证命令是否可用:
注:当你看到这篇文章的时候,Docker Machine 应该有了更新的版本,可参考官方文档进行安装。
为了得到更好的体验,我们可以安装 bash completion script,这样在 bash 能够通过 tab 键补全 docker-mahine 的子命令和参数。安装方法是从https://github.com/docker/machine/tree/master/contrib/completion/bash下载 completion script:
将其放置到 /etc/bash_completion.d 目录下。然后将如下代码添加到$HOME/.bashrc:
PS1=[/u@/h /W$(__docker_machine_ps1)]/$
其作用是设置 docker-machine 的命令行提示符,不过要等到部署完其他两个 host 才能看出效果。
Docker Machine 已经就绪,当前环境如下:
下一节我们学习如何创建 Machine。
原创文章,作者:ItWorker,如若转载,请注明出处:https://blog.ytso.com/53898.html
DockergooglelinuxUbuntuVirtualBox虚拟机相关文章
- docker安装及核心配置
- 使用Docker(k8s)安装Kafka并使用宿主机连接
- Docker常用命令的原理与简单实战
- Docker安装RabbitMQ消息队列
- 安装 Docker 软件
- docker启动mysql命令_docker部署java环境
- docker离线安装mysql镜像_安装rabbitmq
- 【云原生】docker安装mysql实现主从复制
- Docker安装docker-compose插件
- Docker安装mysql5.7
- 使用 Docker 搭建你自己的 RSS 服务(Miniflux)
- 【Docker】使用docker安装部署NextCloud私人网盘
- 【填坑】在windows系统下安装Docker Desktop后迁移镜像位置
- Docker启动容器命令(docker start 容器名称)
- 「 【Docker】利用宝塔docker管理器搭建为知笔记(docker安装为知笔记) 」
- 【Docker 系列】docker 学习八,Docker 网络
- 【ES三周年】 docker搭建elk初体验
- GitLab安装使用(SSH+Docker两种方式)
- 无外网环境下docker安装kong、postgresql、konga (二)
- docker安装elasticsearch
- 【Docker】容器的安装与使用
- docker-compose 安装部署 mysql
- Docker Compose安装详解架构师
- 基于Windows Server 2022 微软发布新Docker容器镜像
- 【Docker容器技术搭建Redis集群】(dockerredis)
- docker managed volume – 每天5分钟玩转 Docker 容器技术(40)
- 的docker容器创建并使用Docker容器启动Redis数据库(创建并启动名为redis)