应无所住,而生其心
排名
1
文章
860
粉丝
112
评论
163
net core webapi post传递参数
庸人 : 确实坑哈,我也是下班好了好几次,发现后台传递对象是可以的,但...
百度编辑器自定义模板
庸人 : 我建议换个编辑器,因为现在百度富文本已经停止维护了,用tinymec...
ICP备案 :渝ICP备18016597号-1
网站信息:2018-2025TNBLOG.NET
技术交流:群号656732739
联系我们:contact@tnblog.net
公网安备:50010702506256
欢迎加群交流技术

Docker Machine使用

5675人阅读 2022/9/23 16:37 总访问:5182324 评论:0 收藏:0 手机
分类: docker

简介


Docker Machine 是一种可以让您在虚拟主机上安装 Docker 的工具,并可以使用 docker-machine 命令来管理主机,是Docker三剑客之一。

Docker Machine 也可以集中管理所有的 docker 主机,比如快速的给 100 台服务器安装上 docker。


Docker Machine 管理的虚拟主机可以是虚拟机,本地主机,也可以是云供应商,如阿里云,腾讯云,AWS,或 DigitalOcean。

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

安装

安装 Docker Machine 之前你需要先安装 Docker。

Docker Machine 可以在多种平台上安装使用,包括 Linux 、MacOS 以及 windows。

Linux 安装命令

  1. base=https://github.com/docker/machine/releases/download/v0.16.0 &&
  2. curl -L $base/docker-machine-$(uname -s)-$(uname -m) >/tmp/docker-machine &&
  3. sudo mv /tmp/docker-machine /usr/local/bin/docker-machine &&
  4. chmod +x /usr/local/bin/docker-machine

macOS 安装命令

  1. base=https://github.com/docker/machine/releases/download/v0.16.0 &&
  2. curl -L $base/docker-machine-$(uname -s)-$(uname -m) >/usr/local/bin/docker-machine &&
  3. chmod +x /usr/local/bin/docker-machine

Windows 安装命令

如果你是 Windows 平台,可以使用 Git BASH,并输入以下命令:

  1. $ base=https://github.com/docker/machine/releases/download/v0.16.0 &&
  2. mkdir -p "$HOME/bin" &&
  3. curl -L $base/docker-machine-Windows-x86_64.exe > "$HOME/bin/docker-machine.exe" &&
  4. chmod +x "$HOME/bin/docker-machine.exe"

安装完毕后可以执行命令,查看是否安装成功。

  1. docker-machine version

成功安装输出如下:

  1. [root@localhost ~]# docker-machine version
  2. docker-machine version 0.16.0, build 702c267f
  3. [root@localhost ~]#

创建集群

一:使用虚拟化平台virtualbox创建集群

前提是需要在机器环境下安装virtualbox

  1. docker-machine create --driver virtualbox test

二:使用本地主机创建集群

  1. docker-machine create --driver generic --generic-ip-address=192.168.12.238 test

接debug可以查看安装信息与错误信息等

  1. docker-machine --debug create --driver generic --generic-ip-address=192.168.12.238 test

如果成功加入可以使用docker-machine ls列出可用的机器

创建集群的时候错误与问题解决

错误解决:Creating machine 卡到Waiting for SSH to be available…

解决方法

输入:

  1. ssh-keygen

然后一直回车,如果提示已经创建过就覆盖

然后使用ssh-copy-id拷贝公钥到需要管理的主机

  1. ssh-copy-id root@192.168.12.238

执行的时候要输入主机的登录密码

解决等待时间比较久:Creating machine 卡到 Provisioning with centos…

接—debug看执行信息的时候会卡到sudo -E yum -y update -x docker-*,可能会等待很长的时间。

如果登录的时候比较长还没有执行成功,可以登录子节点里边去先执行sudo -E yum -y update -x docker-*命令

解决错误:Unable to query docker version: Get https://192.168.12.238:2376/v1.15/version : dial tcp 192.168.12.238 2376: connect: no route to host

原因:远程主机未开放防火墙端口2376

直接关闭防火墙:
systemctl stop firewalld
systemctl disable firewalld

常用命令

查看版本

  1. docker-machine version

加入机器

  1. docker-machine create ...

列出可用的机器

  1. docker-machine ls

删除机器

  1. docker-machine rm 集群里边的名字

其他:

  1. config:查看当前激活状态 Docker 主机的连接信息。
  2. create:创建 Docker 主机
  3. env:显示连接到某个主机需要的环境变量
  4. inspect json 格式输出指定Docker的详细信息
  5. ip 获取指定 Docker 主机的地址
  6. kill 直接杀死指定的 Docker 主机
  7. ls 列出所有的管理主机
  8. provision 重新配置指定主机
  9. regenerate-certs 为某个主机重新生成 TLS 信息
  10. restart 重启指定的主机
  11. rm 删除某台 Docker 主机,对应的虚拟机也会被删除
  12. ssh 通过 SSH 连接到主机上,执行命令
  13. scp Docker 主机之间以及 Docker 主机和本地主机之间通过 scp 远程复制数据
  14. mount 使用 SSHFS 从计算机装载或卸载目录
  15. start 启动一个指定的 Docker 主机,如果对象是个虚拟机,该虚拟机将被启动
  16. status 获取指定 Docker 主机的状态(包括:RunningPausedSavedStoppedStoppingStartingError)等
  17. stop 停止一个指定的 Docker 主机
  18. upgrade 将一个指定主机的 Docker 版本更新为最新
  19. url 获取指定 Docker 主机的监听 URL
  20. version 显示 Docker Machine 的版本或者主机 Docker 版本
  21. help 显示帮助信息

视频讲解地址:
链接: https://pan.baidu.com/s/1ChiZzapvK12BcPr56WHEtw?pwd=akxv 提取码: akxv 复制这段内容后打开百度网盘手机App,操作更方便哦


欢迎加群讨论技术,1群:677373950(满了,可以加,但通过不了),2群:656732739。有需要软件开发,或者学习软件技术的朋友可以和我联系~(Q:815170684)

评价

NET Core 使用 EF Code First

下面这些内容很老了看这篇:https://www.tnblog.net/aojiancc2/article/details/5365 项目使用多层,把数据库访问...

使用OLEDB读取不同版本Excel的连接字符串设置

使用OleBD读取excel的时候,excel不同的版本,连接字符串的写法也会不一样。///<summary> ///读取excel ///</su...

C 使用CancellationTokenSource取消多线程

有时间我们在使用多线程的时候,需要取消线程的执行,可以使用CancellationTokenSource来取消对Task开辟多线程的取消如下:...

使用爬虫刷csdn博客访问量

首先了解一下常见反爬虫的检测方法频率监测:有些网站会设置一种频率监测的机制,对于同一IP,若在一定时间内访问的速度超...

Idea下使用maven搭建SSM(一):SpringMVC

Spring MVC是一款基于MVC架构模式的轻量级Web框架,其目的是将Web开发模块化,对整体架构进行解耦,简化Web开发流程。下面...

Idea下使用maven搭建SSM(二):MyBatis

开发Web应用,数据的存储和处理往往离不开数据库和SQL语句。在使用Java开发的Web应用中,自然也少不了连接数据库的步骤。在...

使用 微软自带语音合成类库

//引入语音合成名称空间 usingSystem.Speech.Synthesis; classA { voidtest1() { //实例化并指定字符串播放合成读音 ...

如何使用图标像使用文字一样,使用文本图标的方法

1.首先在Iconfont-阿里巴巴矢量图标库上面找到你需要的图标然后加入你的购物车然后选择图标;注意:每个类型的图标会大小不...

使用七牛云的cdn服务,提高图片的加载速度

CDN介绍CDN的全称是Content Delivery Network,即内容分发网络。CDN加速主要是加速静态资源,如网站上面上传的图片、媒体,...

.net core 使用session

tip:net core 2.2后可以直接启用session了,不用在自己添加一次session依赖,本身就添加了使用nuget添加引用Microsoft.AspN...

使用OutLook发送邮件

publicstaticvoidOutlook(stringSubject,stringTextBody,stringFromAdd,stringFromPass,stringTo,stringCC,List<string&...

SQL Server 中使用游标

--声明一个游标 DECLAREMyCursorCURSOR FORSELECTTOP5FBookName,FBookCodingFROMTBookInfo//定义一个叫MyCursor的游标,...

Windows使用wireshark抓包小心得

wireshrak是个网络抓包工具,常用。但是在数据较大的网络环境中直接使用软件抓包会导致wireshark卡死。为什么呢 ?网卡瞬间...

Oracle自定义函数的简单使用

一.最最最简单的返回一个数字的函数createorreplacefunctionfun_show returnint--申明返回值 as begin return1; end;...

Oracle事务的简单使用

事务:  事务是一个整体,这些操作要么全部执行成功,要么全部不执行。使用事务的原因:保证数据的安全有效。事务的四个特...