当前位置: 首页 > news >正文

docker-machine常用

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 <远程主机名称>:<远程文件路径> <本地目标路径>

相关文章:

docker-machine常用

docker-machine常用 什么是Docker Machine&#xff1f;Docker Machine默认支持的驱动安装kvm驱动 安装和配置Docker Machine环境准备node1安装Dockernode1安装Docker Machine为Docker Machine安装自动补全为Docker Machine准备boot2docker.iso镜像为node2创建machine主机 管理远…...

【Redis】Java客户端使用list命令

lpush/lrange rpush/rpop/lpop blpop/brpop llen...

ubuntu下yolov6 tensorrt模型部署

TensorRT系列教程之 Windows10下yolov8 tensorrt模型加速部署TensorRT系列教程之 Linux下 yolov8 tensorrt模型加速部署TensorRT系列教程之 Linux下 yolov7 tensorrt模型加速部署TensorRT系列教程之 Linux下 yolov6 tensorrt模型加速部署TensorRT系列教程之 Linux下 yolov5 ten…...

k8s查看当前命名空间下所有运行的 pod 对应的镜像

1&#xff0c;查看镜像 kubectl -n xxx get pods | grep Running | awk {print $1} | xargs -r -I {} kubectl -n xxx get pods {} -ojsonpath{.status.containerStatuses[0].image}{"\n"} | sort 2&#xff0c;去重查看 kubectl -n namespace get pods -o jsonp…...

傅里叶变换和其图像处理中的应用

以下部分文字资料整合于网络&#xff0c;本文仅供自己学习用&#xff01; 一、为什么要在频域进行图像处理&#xff1f; 一些在空间域表述困难的增强任务&#xff0c;在频率域中变得非常普通 滤波在频率域更为直观&#xff0c;你想想嘛&#xff0c;所谓滤波&#xff0c;就是…...

风电厂VR情景式三维模拟实训系统让教育更加贴近实际

VR虚拟仿真实训室是一种利用虚拟现实技术和仿真技术&#xff0c;为教学和学生实训提供虚拟环境和实践机会的设施。它通过将学生置身于虚拟场景中&#xff0c;让他们可以身临其境地参与到实际场景中&#xff0c;从而提高实际操作能力和技能水平。 在教学方面&#xff0c;VR虚拟仿…...

竞赛 深度学习+python+opencv实现动物识别 - 图像识别

文章目录 0 前言1 课题背景2 实现效果3 卷积神经网络3.1卷积层3.2 池化层3.3 激活函数&#xff1a;3.4 全连接层3.5 使用tensorflow中keras模块实现卷积神经网络 4 inception_v3网络5 最后 0 前言 &#x1f525; 优质竞赛项目系列&#xff0c;今天要分享的是 &#x1f6a9; *…...

LeetCode 2562. 找出数组的串联值:模拟(双指针)

【LetMeFly】2562.找出数组的串联值&#xff1a;模拟&#xff08;双指针&#xff09; 力扣题目链接&#xff1a;https://leetcode.cn/problems/find-the-array-concatenation-value/ 给你一个下标从 0 开始的整数数组 nums 。 现定义两个数字的 串联 是由这两个数值串联起来…...

【mac】常用命令01

1、如何像windows一样看磁盘&#xff1f; 不断的在上层文件夹显示&#xff0c;找到最上层&#xff0c;拖拽到左侧&#xff0c;方便之后找 2、Macintosh HD显示隐藏文件夹方法 终端窗口&#xff1a; defaults write com.apple.finder AppleShowAllFiles true killall Finder 或者…...

android 13.0 添加系统字体并且设置为默认字体

1.概述 在13.0系统定制化开发中,在产品定制中,有产品需求对于系统字体风格不太满意,所以想要更换系统的默认字体,对于系统字体的修改也是常有的功能,而系统默认也支持增加字体,所以就来添加楷体字体为系统字体,并替换为系统默认字体, 接下来就来分析下替换默认字体的方…...

平面设计师要会3D吗 优漫动游

所谓物以稀为贵&#xff0c;对于设计人才也一样。越是稀缺的能力&#xff0c;能够发挥的价值就越高。于是现在很多互联网名企在招聘的时候都加了一条&#xff1a;会3D设计者优先。 其实这些看起来很厉害的设计&#xff0c;归结起来无非就三种形式&#xff1a;插画、三维、合成…...

【LeetCode热题100】--105.从前序与中序遍历序列构造二叉树

105.从前序与中序遍历序列构造二叉树 二叉树前序遍历顺序&#xff1a;根左右 二叉树中序遍历顺序&#xff1a;左根右 只要我们在中序遍历中定位到根节点&#xff0c;那么我们就可以分别知道左子树和右子树中的节点数目。由于同一颗子树的前序遍历和中序遍历的长度显然是相同的…...

缓存设计的创新之旅:架构的灵魂之一

缓存在架构设计中占有重要地位。缓存在提升性能中也扮演重要的角色。常见的有对资源的缓存&#xff0c;比如数据库连接池、http连接池&#xff0c;还有对数据的缓存等。缓存的设计可复杂也可简单&#xff0c;但是需要考虑的点却很多。 缓存对象 设计缓存的时候一定要考虑的是&…...

Unnatural Instructions: Tuning Language Models with (Almost) No Human Labor

本文是LLM系列文章&#xff0c;针对《Unnatural Instructions: Tuning Language Models with (Almost) No Human Labor》的翻译。 TOC 摘要 指令调优使预训练的语言模型能够从推理时间的自然语言描述中执行新的任务。这些方法依赖于以众包数据集或用户交互形式进行的大量人工…...

uniapp中全局页面挂载组件(H5)

前言 我们已经学习了 uniapp中全局页面挂载组件&#xff08;小程序&#xff09; 有些小伙伴问在H5怎么做那让我们试一试 直接上代码 //引用组件 import dialog from ./index.vue; //我这里要把小程序的方法和h5方法写一起所以用了混入 import mixins from ./mixins.js //使用…...

设计模式(1)-设计模式前置基础知识

1&#xff0c;设计模式概述 1.1 软件设计模式的产生背景 "设计模式"最初并不是出现在软件设计中&#xff0c;而是被用于建筑领域的设计中。 1977年美国著名建筑大师、加利福尼亚大学伯克利分校环境结构中心主任克里斯托夫亚历山大&#xff08;Christopher Alexand…...

【05】基础知识:React组件实例三大核心属性 - props

一、props 了解 理解 1、每个组件对象都会有 props&#xff08;properties的简写&#xff09;属性 2、组件标签的所有属性都保存在 props 中 作用 通过标签属性从组件外向组件内传递变化的数据 注意 组件内部不要修改 props 数据 二、案例 需求&#xff1a;自定义用来…...

JOSEF约瑟 漏电继电器 JD1-200 工作电压:380V 孔径:45mm 50~500mA

JD1系列漏电继电器 系列型号 JD1-100漏电继电器 JD1-200漏电继电器 JD1-250漏电继电器 JD1系列漏电继电器原为分体式固定式安装&#xff0c;为适应现行安装场合需要&#xff0c;上海约瑟继电器厂在产品原JD1一体式漏电继电器基础上进行产品升级&#xff0c;开发出现在较为…...

[题] 差分矩阵 #差分

题目 差分矩阵 题解 只有一个操作&#xff1a; void insert(int x1, int y1, int x2, int y2, int c){b[x1][y1] c;b[x2 1][y1] - c;b[x1][y2 1] - c;b[x2 1][y2 1] c; }利用差分的思想&#xff0c;扩展到二维上。 insert函数作用是将矩阵之内的数全部加上c&#xff0c;…...

Studio One6.5最新版本新增了对Linux的支持

音乐制作人们&#xff0c;这是你们翘首以待的消息。数字音频工作站&#xff08;DAW&#xff09;已经成为音乐制作专业人士重要工具之一。 遗憾的是&#xff0c;对于 Linux 用户而言&#xff0c;选择十分有限。最受欢迎的选择通常是开源 DAW&#xff0c;如 Ardour、Audacity和闭…...

黑马Mybatis

Mybatis 表现层&#xff1a;页面展示 业务层&#xff1a;逻辑处理 持久层&#xff1a;持久数据化保存 在这里插入图片描述 Mybatis快速入门 ![在这里插入图片描述](https://i-blog.csdnimg.cn/direct/6501c2109c4442118ceb6014725e48e4.png //logback.xml <?xml ver…...

centos 7 部署awstats 网站访问检测

一、基础环境准备&#xff08;两种安装方式都要做&#xff09; bash # 安装必要依赖 yum install -y httpd perl mod_perl perl-Time-HiRes perl-DateTime systemctl enable httpd # 设置 Apache 开机自启 systemctl start httpd # 启动 Apache二、安装 AWStats&#xff0…...

Device Mapper 机制

Device Mapper 机制详解 Device Mapper&#xff08;简称 DM&#xff09;是 Linux 内核中的一套通用块设备映射框架&#xff0c;为 LVM、加密磁盘、RAID 等提供底层支持。本文将详细介绍 Device Mapper 的原理、实现、内核配置、常用工具、操作测试流程&#xff0c;并配以详细的…...

Go语言多线程问题

打印零与奇偶数&#xff08;leetcode 1116&#xff09; 方法1&#xff1a;使用互斥锁和条件变量 package mainimport ("fmt""sync" )type ZeroEvenOdd struct {n intzeroMutex sync.MutexevenMutex sync.MutexoddMutex sync.Mutexcurrent int…...

Qt 事件处理中 return 的深入解析

Qt 事件处理中 return 的深入解析 在 Qt 事件处理中&#xff0c;return 语句的使用是另一个关键概念&#xff0c;它与 event->accept()/event->ignore() 密切相关但作用不同。让我们详细分析一下它们之间的关系和工作原理。 核心区别&#xff1a;不同层级的事件处理 方…...

文件上传漏洞防御全攻略

要全面防范文件上传漏洞&#xff0c;需构建多层防御体系&#xff0c;结合技术验证、存储隔离与权限控制&#xff1a; &#x1f512; 一、基础防护层 前端校验&#xff08;仅辅助&#xff09; 通过JavaScript限制文件后缀名&#xff08;白名单&#xff09;和大小&#xff0c;提…...

医疗AI模型可解释性编程研究:基于SHAP、LIME与Anchor

1 医疗树模型与可解释人工智能基础 医疗领域的人工智能应用正迅速从理论研究转向临床实践,在这一过程中,模型可解释性已成为确保AI系统被医疗专业人员接受和信任的关键因素。基于树模型的集成算法(如RandomForest、XGBoost、LightGBM)因其卓越的预测性能和相对良好的解释性…...

shell脚本质数判断

shell脚本质数判断 shell输入一个正整数,判断是否为质数(素数&#xff09;shell求1-100内的质数shell求给定数组输出其中的质数 shell输入一个正整数,判断是否为质数(素数&#xff09; 思路&#xff1a; 1:1 2:1 2 3:1 2 3 4:1 2 3 4 5:1 2 3 4 5-------> 3:2 4:2 3 5:2 3…...

【技巧】dify前端源代码修改第一弹-增加tab页

回到目录 【技巧】dify前端源代码修改第一弹-增加tab页 尝试修改dify的前端源代码&#xff0c;在知识库增加一个tab页"HELLO WORLD"&#xff0c;完成后的效果如下 [gif01] 1. 前端代码进入调试模式 参考 【部署】win10的wsl环境下启动dify的web前端服务 启动调试…...

使用ch340继电器完成随机断电测试

前言 如图所示是市面上常见的OTA压测继电器&#xff0c;通过ch340串口模块完成对继电器的分路控制&#xff0c;这里我编写了一个脚本方便对4路继电器的控制&#xff0c;可以设置开启时间&#xff0c;关闭时间&#xff0c;复位等功能 软件界面 在设备管理器查看串口号后&…...