配置root账户ssh免密登录并使用docker-machine构建docker服务

简介

Docker Machine是一种可以在多种平台上快速安装和维护docker运行环境,并支持多种平台,让用户可以在很短时间内在本地或云环境中搭建一套docker主机集群的工具。

使用docker-machine命令,可以启动、审查、停止、重启托管的docker 也可以升级Docker客户端和守护程序并配置docker客户端和宿主机通信。

Docker Machine是一个工具,用来在虚拟主机上安装Docker Engine,并使用 docker-machine命令来管理这些虚拟主机。

下载与配置

准备两台服务器

没有服务器可以去ecs厂商如阿里,华为租一段时间,买两台太贵了。当然如果电脑配置高可以直接使用vm ware或virtualbox构建几台虚拟机使用。

这是使用虚拟机软件虚拟两台ubuntu机器使用。

配置root账户ssh免密登录并使用docker-machine构建docker服务_第1张图片
首先需要在一台机器上安装docker和ssh,另一台按转发ssh(虚拟的时ubuntu20.04)在安装界面可以直接选中docker和ssh在完成系统的安装后就具有两个软件。

需要将虚拟机的ip配置为静态的,如果安装时没有配置的需要配重新配置一下。

配置root账户ssh免密登录并使用docker-machine构建docker服务_第2张图片

安装

wget https://mirrors.aliyun.com/docker-toolbox/linux/machine/0.10.0/docker-machine-Linux-x86_64

使用该命令安装的是docker-machine的的二进制文件,如下

# 给文件授权
chmod +x docker-machine

在这里插入图片描述
为该二进制文件自定义命令,并配置环境变量
sudo vim /etc/profile

alias docker-machine='/home/xwh/docker-machine/docker-machine-Linux-x86_64'

sudo source /etc/profile

使用如下命令出现docker-machine版本即为配置成功:

docker-machine -v

在这里插入图片描述

配置两台机器ssh免密登录参考docker-machine安装

配置root账户ssh免密登录并使用docker-machine构建docker服务_第3张图片

在主机器上也就是docker,并安装了docker-machine的机器上使用命令在节点机器上安装docker。

Error detecting OS: Too many retries waiting for SSH to be available. Last error: Maximum number of retries (60) exceeded

出现上述问题的原因是访问权限不够,这里创建root用户,并都切换为root用户:

# 创建root用户命令
sudo passwd root

需要输入三次密码,第一是sudo需要的密码,第二三次是确认root用户的密码。
配置root账户ssh免密登录并使用docker-machine构建docker服务_第4张图片

然后使用su [用户名]切换用户,切换到root用户

配置root账户ssh免密登录并使用docker-machine构建docker服务_第5张图片

切换用户后环境变量的命令可能失效,重启一下环境变量即可。

切换了root用户后ssh无法切换了,原因是ssh默认不可以root远程登录

配置root账户ssh免密登录并使用docker-machine构建docker服务_第6张图片
此时先使用普通用户ssh登录,检查是否是ssh配置问题,如果普通用户能登录就说明只是root的权限问题。

编辑ssh_config文件配置允许远程访问PermitRootLogin yes

vi /etc/ssh/sshd_config

配置root账户ssh免密登录并使用docker-machine构建docker服务_第7张图片

重启ssh服务service sshd restart

如下所示root账户也可以成功切换了。
配置root账户ssh免密登录并使用docker-machine构建docker服务_第8张图片
但是现在还需要输密码才能切换,接下来配置免密登录,是用公钥实现:

ssh-keygen

一直按ENTER

配置root账户ssh免密登录并使用docker-machine构建docker服务_第9张图片

ssh-copy-id -i ~/.ssh/id_rsa.pub [email protected]

ip换成自己第二台服务的ip

配置root账户ssh免密登录并使用docker-machine构建docker服务_第10张图片
执行后会自动登录到第二台主机,之后切换也不需要密码了。

使用exit命令推出

在主节点远程创建节点的主机
docker-machine create --driver generic --generic-ip-address 172.25.2.2 node-client

--driver:要在目标主机创建docker的驱动程序
--generic-ip-address:目标地址
<machine>:创建的主机的名称
docker-machine create -h:查看帮助

在这里插入图片描述
这样就可以通过docker-machine在配置了ssh的节点上安装dockr服务。

你可能感兴趣的:(#,docker,ssh,docker,eureka)