小工具      在线工具  汉语词典  css  js  c++  java

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

# docker,ssh,docker,eureka 额外说明

收录于:152天前

简介

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

使用 docker-machine 命令,您可以启动、查看、停止和重新启动托管的 docker。您还可以升级Docker客户端和守护进程,并配置docker客户端与主机通信。

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

下载与配置

准备两台服务器

如果你没有服务器,可以向阿里巴巴、华为等ecs厂商租用一段时间。买两个太贵了当然,如果电脑配置高的话,可以直接使用vm ware或者virtualbox搭建几个虚拟机来使用。

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

在这里插入图片描述
首先需要在一台机器上安装docker和ssh,另一台按转发ssh(虚拟的时ubuntu20.04)在安装界面可以直接选中docker和ssh在完成系统的安装后就具有两个软件。

虚拟机的IP需要配置为静态。如果安装时没有配置,则需要重新配置。

在这里插入图片描述

安装

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安装

在这里插入图片描述

在主机(即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用户的密码。
在这里插入图片描述

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

在这里插入图片描述

切换用户后环境变量命令可能会失败。重启一下环境变量就可以了。

切换root用户后,ssh无法切换。原因是ssh默认不允许root远程登录。

在这里插入图片描述
此时先使用普通用户ssh登录,检查是否是ssh配置问题,如果普通用户能登录就说明只是root的权限问题。

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

vi /etc/ssh/sshd_config

在这里插入图片描述

重启ssh服务service sshd restart

如下所示root账户也可以成功切换了。
在这里插入图片描述
但是现在还需要输密码才能切换,接下来配置免密登录,是用公钥实现:

ssh-keygen

一直按ENTER

在这里插入图片描述

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

将ip改为你的第二个服务的ip

在这里插入图片描述
执行后会自动登录到第二台主机,之后切换也不需要密码了。

使用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服务。

. . .

相关推荐

额外说明

【Python面向对象编程】第01章 OOP简介

本文是 Python 面向对象编程(object-oriented programming、OOP)的第一篇,简单介绍一下基本的概念,包括对象、类、属性、方法、继承以及方法的覆盖等。 在 Python 中,一切皆对象。对象拥有状态(属性)和行为(方法)。

额外说明

【1++的C++初阶】之string

-作者主页:进击的1++ - 专栏链接:【1++的C++初阶】 文章目录 一,浅谈string类 二,string 类常用接口 2.1 string的构造 2.2 string类对象的容量操作 2.3 string类对象的访问及遍历操作 2.4 stri

额外说明

day13---(01)登录功能后端实现

1、在service_ucenter模块中实现登录方法 (1) com/atguigu/ucenterservice/entity/vo中新建LoginVo类。 package com.atguigu.ucenterservice.entity.vo;

额外说明

23设计模式之 ---------适配器模式

适配器模式 1.回顾结构性模式 2.适配器模式简介 3.适配器模式介绍 1.回顾结构性模式 今天开始正式学习结构性模式了:先简单回顾下结构性模式是什么; 2.适配器模式简介 适配器模式 适配器模式(Adapter Pattern)是作为两个不兼容的接口之

额外说明

APP自动化你需要知道的一

appium环境安装与架构 目前mobile自动化的方案 IOS Android calabash-ios/Frank/UIAutomation/ios-driver/KeepItFunctional… calabash-android/MonkeyTa

额外说明

React Native开发中解决Android端口被占用

一、常规方法 进入项目文件中 打开黑窗口输入:netstat -aon|findstr 5037 输入tasklist /fi 'PID eq 2464' 输入:taskkill /pid 2464 /f 验证:netstat -aon|findstr

额外说明

Spring5新功能

文章目录 前言 一、整合日志功能 二、@Nullable注解 三、函数式风格编程 四、JUnit5单元测试框架 总结 前言 整合日志、Nullable注解、函数式风格编程、整合JUnit5、Webflux 一、整合日志功能 Spring5移除了Log4j

额外说明

SQL中的With as用法

WITH AS短语,也叫做子查询部分,定义一个SQL片断后,该SQL片断可以被整个SQL语句所用到。有的时候,with as是为了提高SQL语句的可读性,减少嵌套冗余。 举个栗子: with A as ( select * from user

额外说明

TikTok外贸工厂陪跑训练营:一个月开拓TK底盘新渠道 基础+实操+高阶篇!

重仿标题:TikTok外贸工厂陪练营:轻松掌握TK底盘新渠道,打造强大外贸团队! 文章: 作为最受年轻人欢迎的短视频平台之一,TikTok以其简洁有趣的内容而广受欢迎。然而,除了作为娱乐和社交工具之外,TikTok还隐藏着巨大的商机。近日,一场名为“Ti

额外说明

控制板板载功能验证

1. 控制板 控制板又称手持互联网电脑,是一款专为青少年学习Python编程和创意制造,特别是物联网应用而设计的开源硬件。内置microPython开源嵌入式Python运行环境,可直接运行Python代码。配备mPython图形化编程软件,可对控制板进

ads via 小工具