docker-machine常用

news2024/10/7 16:23:12

docker-machine常用

  • 什么是Docker Machine?
    • Docker Machine默认支持的驱动
    • 安装kvm驱动
  • 安装和配置Docker Machine
    • 环境准备
    • node1安装Docker
    • node1安装Docker Machine
    • 为Docker Machine安装自动补全
    • 为Docker Machine准备boot2docker.iso镜像
    • 为node2创建machine主机
  • 管理远程docker主机
  • 常见用法
    • 列出可用的机器
    • 查看主机状态
    • 创建机器
    • 查看机器的ip
    • 启动机器
    • 停止机器
    • 重启机器
    • 强制关闭机器
    • 删除机器
    • 进入机器
    • 复制文件到主机

什么是Docker Machine?

Docker Machine是一个远程管理工具;
Docker Machine帮助我们在远程的主机上安装和配置Docker
Docker Machine帮助我们在远程的虚拟机(VMWare、VirtualBox、KVM等)上安装和配置Docker
项目地址:https://github.com/docker/machine
参考:https://blog.csdn.net/sl963216757/article/details/118344600
image.png


Docker Machine默认支持的驱动

image.png


安装kvm驱动

# 下载docker-machine-driver-kvm
sudo curl -L https://github.com/dhiltgen/docker-machine-kvm/releases/download/v0.7.0/docker-machine-driver-kvm -o /usr/local/bin/docker-machine-driver-kvm 

# 赋予docker-machine-driver-kvm可执行权限
sudo chmod +x /usr/local/bin/docker-machine-driver-kvm

安装和配置Docker Machine


环境准备

各主机之间做好ssh免密

  • node1
  • node2

node1安装Docker

https://blog.csdn.net/omaidb/article/details/121683661

# 安装yum-utils
yum install -y yum-utils

# 卸载旧版docker-CE
yum -y remove docker \
    docker-ce \
    docker-client \
    docker-client-latest \
    docker-common \
    docker-latest \
    docker-latest-logrotate \
    docker-logrotate \
    docker-engine

# 添加docker-ce源 https://docs.docker.com/engine/install/centos/
## docker-ce国内源--aliyun
# yum-config-manager --add-repo=https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
## docker-ce官方源
yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo

# 查看repolist中docker-ce仓库是否添加成功
yum repolist

# 刷新yum缓存
yum clean all && yum makecache

# 安装docker-ce
yum -y install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin

node1安装Docker Machine

https://github.com/docker/machine

# 下载Docker Machine
curl -L https://github.com/docker/machine/releases/download/v0.16.2/docker-machine-`uname -s`-`uname -m` >/tmp/docker-machine

# 赋予可执行权限
chmod +x /tmp/docker-machine

# 复制到可执行目录
sudo cp /tmp/docker-machine /usr/local/bin/docker-machine

# 查看docker-machine版本
docker-machine version

为Docker Machine安装自动补全

安装来源:https://github.com/docker/machine/tree/master/contrib/completion/bash

  • 安装bash脚本到/etc/bash_completion.d/
# 下载docker-machine-prompt.bash
wget https://raw.githubusercontent.com/docker/machine/master/contrib/completion/bash/docker-machine-prompt.bash -P /etc/profile.d/

# 下载docker-machine-wrapper.bash
wget https://raw.githubusercontent.com/docker/machine/master/contrib/completion/bash/docker-machine-wrapper.bash -P /etc/profile.d/

# 下载docker-machine.bash
wget https://raw.githubusercontent.com/docker/machine/master/contrib/completion/bash/docker-machine.bash -P /etc/profile.d/

为Docker Machine准备boot2docker.iso镜像

boot2docker.iso项目地址:https://github.com/boot2docker

# 下载boot2docker.iso
wget -c https://github.com/boot2docker/boot2docker/releases/download/v19.03.12/boot2docker.iso  -P $HOME/.docker/machine/cache/

image.png


为node2创建machine主机

node1上执行创建node2_machine主机的命令

# 创建machine主机
## --driver:要在目标主机创建docker的驱动程序
## --generic-ip-address:目标地址
## <server2>:创建的主机的名称
# docker-machine create 主机名
docker-machine create --driver generic --generic-ip-address 172.25.2.2 server2

管理远程docker主机

# 加载docker-machine变量
## 会加载docker的远程主机变量,用于管理远程docker
docker-machine env
docker-machine env 远程docker主机名

# 取消docker-machine变量
## 将docker引擎指向本地docker
docker-machine env -u

# 查看当前指向的docker引擎
echo $DOCKER_HOST
## 回显
tcp://203.0.113.81:2376

常见用法

https://www.runoob.com/docker/docker-machine.html

参数解释
config查看当前激活状态 Docker 主机的连接信息
docker-machine config
create创建 Docker 主机
env显示连接到某个主机需要的环境变量
docker-machine env
inspect以 json 格式输出指定Docker的详细信息
docker-machine inspect
ip获取指定 Docker 主机的地址
示例: 查看主机的IP
docker-machine ip
kill直接杀死指定的 Docker 主机
ls列出所有的管理主机
active获取当前活动的 Docker Machine 主机
示例: 显示当前的活动主机
docker-machine active
provision重新配置指定主机
regenerate-certs为某个主机重新生成 TLS 信息
restart重启指定的主机
rm删除某台 Docker 主机,对应的虚拟机也会被删除
ssh通过 SSH 连接到主机上,执行命令
scp在 Docker 主机之间以及 Docker 主机和本地主机之间通过 scp 远程复制数据
mount使用 SSHFS 从计算机装载或卸载目录
start启动一个指定的 Docker 主机,如果对象是个虚拟机,该虚拟机将被启动
status获取指定 Docker 主机的状态(包括:Running、Paused、Saved、Stopped、Stopping、Starting、Error)等
stop停止一个指定的 Docker 主机
upgrade将一个指定主机的 Docker 版本更新为最新
url获取指定 Docker 主机的监听 URL
version显示 Docker Machine 的版本或者主机 Docker 版本
# 重新配置现在主机
docker-machine provision

# 为主机重新生成证书
docker-machine regenerate-certs

# 升级主机的docker服务到最新版本
docker-machine upgrade 

# 查看docker-machine版本
docker-machine version

列出可用的机器

# 列出所有可用的机器
docker-machine ls

image.png


查看主机状态

# 查看主机的状态
docker-machine status

创建机器

# 创建一台名为 test 的机器
## --driver:指定用来创建机器的驱动类型,这里是 virtualbox
docker-machine create --driver virtualbox test

查看机器的ip

# 查看机器的ip
docker-machine ip test

image.png


启动机器

# 启动机器
docker-machine start test

image.png


停止机器

# 停止机器
docker-machine stop test

image.png


重启机器

# 重启主机
docker-machine restart vm1

强制关闭机器

# 强制关闭一个主机
docker-machine kill vm1

删除机器

# 删除主机
docker-machine rm vm1

进入机器

# # 以SSH的方式连接到主机上
docker-machine ssh vm1

复制文件到主机


# 从本地主机复制文件到远程 Docker Machine 主机
docker-machine scp <本地文件路径> <远程主机名称>:<目标路径>

# 从远程 Docker Machine 主机复制文件到本地主机
docker-machine scp <远程主机名称>:<远程文件路径> <本地目标路径>

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1090675.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

138589-19-2,羧基荧光素-氨基盐酸盐,FAM-NH2.HCl

CAS号&#xff1a;138589-19-2 中文名&#xff1a;羧基荧光素-氨基.盐酸盐 英文名&#xff1a;FAM-NH2.HCl 化学式&#xff1a;C27H26N2O6 分子量&#xff1a;474.51 纯度标准&#xff1a;95% 产品简介&#xff1a;5-FAM-NH2.HCl(羧基荧光素-氨基.盐酸盐)其中异硫氰酸荧光…

点成分享 | 水浴设备在食品生物活性测定中的应用

一、食品加工副产品和废物的再利用 近年来&#xff0c;人们越来越关注食品加工副产物和废物的再利用问题。从环保角度来看&#xff0c;食品加工副产物和废物处理不当会对环境造成严重污染&#xff0c;因为他们降解后会产生难闻气味和大量渗滤液&#xff0c;从而垃圾填埋场也会…

嵌入式 CVR 和 Linux CVR:智能摄像机视频录制器的未来

随着智能监控、智能家居等领域的不断发展&#xff0c;嵌入式 CVR&#xff08;Camera Video Recorder&#xff09;和基于 RV1106/RV1103 芯片的 Linux CVR&#xff08;Camera Video Recorder&#xff09;平台成为了智能摄像机视频录制器的主要解决方案。本文将介绍嵌入式 CVR 的…

使用postMan调试接口出现 Content type ‘multipart/form-data;charset=UTF-8‘ not supported“

使用postMan调试接口出现 Content type multipart/form-data&#xff1b;charsetUTF-8 not supported" 问题原因解决方案 最近好久没写springboot项目了&#xff0c;然后写了一个添加用户的接口&#xff0c;使用postman测试时出现了问题。如下图&#xff1a; org.springfr…

在IDEA中如何用可视化界面操作数据库? 在idea中如何操作数据库? 在idea中如何像Navicat一样操作数据库?

1、找到database&#xff0c;创建连接 我用了中文包&#xff0c;英文状态下和我的操作完全一样 英文下第二列数据库名称为 database 2、配置相关属性&#xff0c;如IP地址&#xff0c;密码等 3、选择对应的库名&#xff0c;此处也叫架构 4、然后就可以进行愉快的操作了

免费chatGPT工具

发现很多人还是找不到好用的chatGPT工具&#xff0c;这里分享一个邮箱注册即可免费试用。 PromptsZone - 一体化人工智能平台使用 PromptsZone 与 ChatGPT、Claude、AI21 Labs、Google Bard 聊天&#xff0c;并使用 DALL-E、Stable Diffusion 和 Google Imagegen 创建图像&…

第三次作业(9.26)

1.判断奇数和偶数 A. num int(input("请输入一个整数&#xff1a;")) if num % 2 0:print("even_nuumber") else:print("odd_number") B. num int(input("请输入一个整数&#xff1a;")) if num & 1 0:print("even_number…

TiDB 7.4 发版:正式兼容 MySQL 8.0

MySQL 是全球最受欢迎的开源数据库&#xff0c;长期位于 DB-Engines Ranking 排行榜第二名&#xff0c;在世界范围内拥有数量庞大的企业用户和开发者。然而&#xff0c;随着时间的推移&#xff0c;MySQL 用户正面临新挑战。Oracle 官宣将在 2023 年 10 月终止 MySQL 5.7 版本的…

java中的接口interface

一、面向对象基本概念 Java是一种面向对象的语言&#xff0c;其中「对象」就相当于是现实世界中的一个个具体的例子&#xff0c;而「类」就相当于是一个抽象的模板&#xff0c;将抽象的概念模板转化为具体的例子的过程就叫做「实例化」。 比如说人这个概念就是一个抽象化的「…

UE4 快速入门 1

安装 https://www.unrealengine.com/zh-CN/download Launcher ue4.23 editor visual studio 2019 社区版 文档学习

EtherCAT 转 CClinkIE 协议网关与三菱CClinkIE通讯方法

远创智控YC-ECTM-CCLKIE网关产品是工业领域的一大神器&#xff0c;它可以通过各种数据接口与仪表、PLC、计量设备等产品进行连接&#xff0c;实时采集这些设备中的运行数据、状态数据等信息。然后&#xff0c;它将采集的数据进行整合、运算等操作后&#xff0c;传输到其他设备或…

网络工程师知识点2

21、VLAN 有什么作用&#xff1f; ①广播控制&#xff1b;②安全性&#xff1b;③增加带宽利用率&#xff1b;④减少延迟。 22、实际的项目中如何划分vlan的&#xff1f; 采用静态VLAN的划分方式&#xff0c;可以按照楼层划分&#xff0c;可以按安装科室划分 23、vlan 的链路…

基本微信小程序的二手车交易平台

项目介绍 首先,论文一开始便是清楚的论述了小程序的研究内容。其次,剖析系统需求分析,弄明白“做什么”,分析包括业务分析和业务流程的分析以及用例分析,更进一步明确系统的需求。然后在明白了小程序的需求基础上需要进一步地设计系统,主要包罗软件架构模式、整体功能模块、数…

1. vue-sy-admin: 基于vue3+TypeScript的全局过滤器(filters) 封装及示例

在vue3中使用全局filters已经不是必须&#xff0c;有很多种替代方案(直接定义函数即可)。如果项目中使用了unplugin-auto-import插件完全可以将filters导出函数使其在全局自动引入/声明。当然在这里就不说插件的使用了。下面就详细说说如何实现 题外话: 强烈推荐使用 vueuse&a…

kafka属性说明

kafka中关于一些字段说明 groupId :标识消费者分组id&#xff0c;如果多个消费者id相同&#xff0c;就表示这几个消费者是一组&#xff0c;当一组多个消费者消费同一个topic时&#xff0c;一组中只会有一个成功消费 代码如下 这时只会有一条消息被消费

【算法基础】基础算法(三)--(双指针算法、位运算、离散化、区间合并)

一、双指针算法 双指针算法是一种通过设置两个指针不断进行单向移动来解决问题的算法。 1、双指针算法模板 &#x1f53a;记忆&#xff01; for (int i 0, j 0; i < n; i ) {while (j < i && check(i, j)) j ;// 具体问题的逻辑 } 常见问题分类&#xff1a…

Profinet主站转EtherNET/IP从站连接profinet从站设备方法

YC-PNM-EIP网关产品可以通过各种数据接口与工业领域的仪表、PLC、计量设备等产品连接&#xff0c;实时采集这些设备中的运行数据、状态数据等信息&#xff0c;并将采集的数据进行整合、运算等操作后传输到其他设备或云平台。网关可采集Profinet EtherCAT设备的实时数据采集&…

【PyTorch2 之027】在 PyTorch 中的R-CNN、Fast R-CNN和 Faster R-CNN

一、说明 亮点&#xff1a;对象检测是计算机视觉中最重要的任务之一。在这篇文章中&#xff0c;我们将概述最有影响力的对象检测算法家族之一&#xff1a;R-CNN、Fast R-CNN 和 Faster R-CNN。我们将重点介绍它们中的每一个的主要新颖性和改进。 最后&#xff0c;我们将专注于 …

QT链接redis

1 编译相关dll 【Redis】Redis在Windows下的使用(hiredisQt5.7.0mingw5.3.0)_hiredis windows_江湖人称菠萝包的博客-CSDN博客 2 加载配置 qt redis 的下载、连接、使用_qt连接redis_书海漫舟的博客-CSDN博客 具体步骤如下&#xff1a; 1 下载hiredis源码https://github.com…

Jwt的基础入门,详细讲解

目录 一.Jwt的简介 1.1 Jwt是什么 1.2 组成部分&#xff1a; 1.3 使用JWT的步骤如下&#xff1a; 1.4 JWT的使用有以下优势&#xff1a; 1.5 JWT也有一些潜在的劣势&#xff1a; 二.Jwt的工具类 Jwt测试类&#xff1a; 三.案例----Jwt集成进spa项目 一.Jwt的简介 1.1…