centos7下安装docker(14安装docker machine​)

简介:

为所有host安装和配置docker

之前我们手工安装了一个docker host:

1.安装https CA证书

2.添加GPG key

3.添加docker apt源

4.安装docker

     对于多主机的环境手工方式效率低且不容易保证一致性,只对这个问题,docker给出的解决方案是docker machine

 

用docker machine可以批量安装和配置docker host,这个host可以是本地的虚拟机,物理机,也可以是公有云中的云主机

 

 

Docker Machine支持在不同环境下安装配置docker host,包括:

1.常规Linux操作系统;

2.虚拟化平台-VirtualBox,VMware,Hyper-V

3.Openstack

4.公有云-Amazon Web Services,Microsoft Azure,Google Compute Engine,Digital Ocean等

 

Docker Machine为这些环境起了一个统一的名字:provider

对于特定的某个provider,Docker Machine使用相应的driver安装配置docker host

 

 

 

安装docker machine

实验环境:主机名     IP                               操作系统

                  docker    192.168.7.222           centos7

                 docker1   192.168.7.235           centos7

                 docker2   192.168.7.231          centos7

我将在192.168.7.222  docker上安装docker machine,然后通过docker machine命令在其他两台host上部署docker

 

安装docker machine,参照官方文档:https://docs.docker.com/machine/install-machine/#install-machine-directly

执行docker-machine version验证命令是否可用

注:建议根据官方文档搭建

 

 

安装bash completion script,这样bash可以通过tab来补全命令和参数:

下载completion script:docker-machine-prompt.bash      docker-machine-wrapper.bash    docker-machine.bash 将其放在/etc/bash_completion.d目录下

 

命令为:scripts=( docker-machine-prompt.bash docker-machine-wrapper.bash docker-machine.bash ); for i in "${scripts[@]}"; do sudo wget https://raw.githubusercontent.com/docker/machine/v0.13.0/contrib/completion/bash/${i} -P /etc/bash_completion.d; done

 

然后将如下代码添加到~/.bashrc

PS1='[\u@\h \W$(__docker_machine_ps1)]\$ '

若出现一下情况:

更改~/.bashrc,在bashrc中添加以下三行:

source /etc/bash_completion.d/docker-machine-wrapper.bash
source /etc/bash_completion.d/docker-machine-prompt.bash
source /etc/bash_completion.d/docker-machine.bash

 

重新source下bashrc

source /root/.bashrc

到此位置docker-machine就安装完成了!

 

如何卸载docker-machine,可以参考官方文档!

 

 

创建machine

对于docker machine来将,术语Machine就是运行docker daemon的主机,创建machine就是在host上安装docker

执行docker-macine ls查看当前的machine

当前还没有一个machine,接下来我们创建第一个machine:docker1-192.168.7.235

创建machine要求能够无密码远程登陆主机,所以需要下通过如下命令将ssh key拷贝到192.168.7.235

1.ssh-keygen -t rsa    在192.168.7.222上面生成密钥

注:这里要回车三次

2.在用户的家目录下生成一个   .ssh的 目录

3.在 .ssh下存放生成的密钥文件

id_rsa :生成的私钥文件

id_rsa.pub:生成的公钥文件

如果希望公钥生效,需满足以下两个条件:

1) .ssh目录的权限必须是700 

2) .ssh/authorized_keys文件权限必须是600

3.将密钥拷贝到192.168.7.235里面

ssh-copy-id

4.通过ssh 192.168.7.235测试是否成功

 

 

 

一切准备就绪,执行docker-machine create创建第一个docker1

docker-macine create --driver generic --generic-ip-address=192.168.7.235 docker1

因为我们用的是普通的linux部署docker,所以使用generic driver通用driver,其他driver可以参考:https://docs.docker.com/machine/drivers/

我们的docker1已经创建成功,步骤如下

1.ssh远程登录主机

2.安装docker

3.复制证书

4.配置docker

5.启动docker

 

再次执行;docker-machine ls

现在看到docker1已经运行

我们登陆到docker1查看具体配置

在/etc/systemd/system/docker.service.d下文件名是:10-machine.conf

注:-H tcp://0.0.0.0:2376 使docker daemon接受远程连接

      --tls*对远程连接启用安全认证和加密

注:主机名hostname也会被更改

 

使用同样的方法创建docker2

docker-machine create --driver generic --generic-ip-address=192.168.7.231 docker2

由于我忘记传送密钥,导致的报错

当我把密钥传进去后重新创建docker2时提示:docker2已经存在,通过docker-machine ls查看docker2已经处于运行的状态,无法识别docker版本

注:这里的docker的版本还不能指定,默认安装的是repo的版本

可以使用docker-machine rm -f删除docker2

 

   

重新传送密钥,然后重新创建docker2

在密钥传送不成功以及网络无法ping通baidu的情况下,终于将docker2建好了:

 

盗图:

 

 

 

 管理machine:

学习无需登录machine就可以执行docker相关的命令

1.docker-machine env docker1显示访问docker1需要的所有环境变量

 

 根据提示,执行eval $(docker-machine env docker1)

可以看到,命令提示符变成了docker1,其原因是我们之前在/root/.bashrc里面配置了 PS1='[\u@\h \W$(__docker_machine_ps1)]\$ ',用于显示当前的docker host

注:如果我们输入eval $(docker-machine env docker1)没有显示出docker1的命令提示符,我们可以重新输入一遍 PS1='[\u@\h \W$(__docker_machine_ps1)]\$ '

在此状态下执行的docker命令其效果都相当于在docker1上执行

 

docker-machine子命令:

docker-machine upgrade docker1 docker2批量更新docker host版本

docker-machine config docker1 查看host的docker daemon配置

docker-machine start/status/restart/kill  docker1是对docker host所在的系统的操作,不是对服务的操作

docker-machine scp是在docker host之间复制

docker-machine rm docker1删除一个docker host

其他请参考

本文转自不要超过24个字符博客51CTO博客,原文链接http://blog.51cto.com/cstsncv/1980580如需转载请自行联系原作者


cstsncv

相关文章
|
2天前
|
监控 关系型数据库 MySQL
zabbix7.0.9安装-以宝塔安装形式-非docker容器安装方法-系统采用AlmaLinux9系统-最佳匹配操作系统提供稳定运行环境-安装教程完整版本-优雅草卓伊凡
zabbix7.0.9安装-以宝塔安装形式-非docker容器安装方法-系统采用AlmaLinux9系统-最佳匹配操作系统提供稳定运行环境-安装教程完整版本-优雅草卓伊凡
53 30
|
11天前
|
Linux 虚拟化 Windows
VMware隐藏黑科技!CentOS安装这个神器效率翻倍 文件互传竟比U盘还快?
### 安装VMtools的作用及步骤 安装VMtools可以实现Windows与CentOS之间的字符串和命令粘贴、文件夹共享等操作。在CentOS中,通过VMware菜单栏选择“VMware Tools”,将下载的压缩包拷贝到`/opt`目录并解压。接着进入终端,使用`./vmware-install.pl`命令完成安装。安装后重启系统,即可实现Windows与CentOS之间的字符和文件共享。具体步骤包括解压文件、启动命令行终端、安装VMtools以及配置文件共享。
51 16
VMware隐藏黑科技!CentOS安装这个神器效率翻倍 文件互传竟比U盘还快?
|
11天前
|
存储 IDE Linux
零基础保姆级教程!手把手教你免费玩转Linux CentOS安装+学习环境搭建(附避坑指南)
本文详细介绍了在VMware虚拟机中安装CentOS 6.8的全过程。首先,需确保已安装VMware并开启V-CPU虚拟化功能,可通过BIOS设置或使用LeoMoon CPU-V工具检测。接着,下载CentOS镜像文件,并在VMware中新建虚拟机,配置CPU、内存、硬盘等参数。最后,加载ISO镜像启动虚拟机,按照提示完成CentOS的安装,包括语言、键盘、存储方式、地区、密码设置及硬盘分区等步骤。安装完成后,以root用户登录即可进入系统桌面,开始学习Linux命令和操作。
64 12
零基础保姆级教程!手把手教你免费玩转Linux CentOS安装+学习环境搭建(附避坑指南)
|
15天前
|
缓存 Ubuntu Linux
Docker Buildx 简介与安装指南
Docker Buildx 是一个强大的工具,提供了多架构构建、并行构建和高级缓存管理等功能。通过正确安装和配置 Buildx,可以显著提升 Docker 镜像的构建效率和灵活性。希望本文能帮助你更好地理解和使用 Docker Buildx,以提高开发和部署的效率。
155 16
|
13天前
|
存储 虚拟化 Docker
Docker Desktop 4.38 安装与配置全流程指南(Windows平台)
Docker Desktop 是容器化应用开发与部署的一体化工具,支持本地创建、管理和运行 Docker 容器。4.38 版本新增 GPU 加速、WSL 2 性能优化和 Kubernetes 1.28 集群管理功能,适用于微服务开发和 CI/CD 流水线搭建。安装要求为 Windows 10 2004 及以上(64 位),需启用 Hyper-V 或 WSL 2。硬件最低配置为 4GB 内存、20GB 存储和虚拟化技术支持的 CPU。安装步骤包括启用系统功能、下载并运行安装程序,完成后配置镜像加速并验证功能。常见问题涵盖 WSL 2 安装不完整、磁盘空间清理及容器外网访问等。
930 12
|
14天前
|
弹性计算 运维 Ubuntu
在阿里云ECS云服务器上安装、配置及高效使用Docker与Docker Compose
本文介绍了在阿里云ECS上使用Ubuntu系统安装和配置Docker及Docker Compose的详细步骤。通过这些工具,可以快速部署、弹性扩展和高效管理容器化应用,满足开发和运维需求。内容涵盖Docker的安装、镜像源配置、创建Web程序镜像以及使用Docker Compose部署WordPress等实际操作,并分享了使用体验,展示了阿里云实例的高性能和稳定性。
189 4
|
5天前
|
Ubuntu Linux Docker
Docker 入门全攻略:安装、操作与常用命令指南
Docker 的世界非常广阔,这只是一个开始,请继续探索和学习 Docker 的高级特性和最佳实践。后续也会继续更新相关的理论与实践内容。 只有锻炼思维才能可持续地解决问题,只有思维才是真正值得学习和分享的核心要素。如果这篇博客能给您带来一点帮助,麻烦您点个赞支持一下,还可以收藏起来以备不时之需,有疑问和错误欢迎在评论区指出~
|
7天前
|
Ubuntu Linux Docker
如何在Ubuntu 20.04系统中安装Docker
安装 Docker 引擎的步骤如下:首先更新系统包索引 (`sudo apt update`),安装必要依赖包 (`apt-transport-https` 等),添加 Docker 官方 GPG 密钥及 APT 仓库。接着再次更新包索引并安装 Docker 引擎及相关工具 (`docker-ce` 等)。最后启动 Docker 服务并设置开机自启,通过 `docker --version` 和运行测试容器 (`sudo docker run hello-world`) 验证安装是否成功。
68 0
|
网络协议 Docker 容器

热门文章

最新文章