vagrant 安装虚拟机,docker, k8s

第一步:安装虚拟机

1、安装 vagrant

本机是 mac, 但是这一步不影响,找对应操作系统的安装方式就行了。

vagrant 下载地址

brew install vagrant

2、下载 VirtualBox 虚拟机

VirtualBox 下载地址

找到对应系统下载,安装就可以。 尽量把虚拟机和 vagrant 放到一个文件夹中,规避一些问题.后面的 vagrant 命令都要 在这个文件目录下执行。

3、下载一个 centos 7 box 镜像

这一步比较重要,这一步就是通过执行一个 vagrant 命令得到一个 Vagrantfile 文件,这个文件,就是后面我们用来启动虚拟系统的凭据。如果直接执行  vagrant init centos/7 命令,在后面更新 yum 源 的时候,会出现各种  Metadata file does not match checksum ,超时等各种问题,不管是你使用的是华为库,还是阿里库,等等。都会报错。这个问题我踩了几天的坑。查询了网上的各种资料,都不能完全解决问题。最后摸索了下面这个方式。亲测没有问题

采用本地镜像导入的方式,需要实现下载 一个 box 镜像.  这个很小,不要害怕,并不是 ISO那种大镜像。

centos 7 官方box 下载地址

下载下面这个就可以。

如果上面 box 链接出现问题,可以下载百度网盘的

链接: https://pan.baidu.com/s/1P6DKxar1H5kjHEifqk7n7Q 提取码: hx96 

下载到本地后,同样放到 vagrant 的同一个目录下。这样未来规避一些未知问题

4、添加 box镜像

#查看所有box 镜像
vagrant box list          #如果存在通过在线init 安装的镜像,则可以先删除
vagrant box remove centos/7#添加一个镜像到本地仓库  box-name 就类似一个别名
# vagrant box add [box-name] [box镜像文件或镜像名]
#  比如我的: 
vagrant box add centos/7 CentOS-7-x86_64-Vagrant-2004_01.VirtualBox.box#查看box 镜像  是否安装成功
vagrant box list        

安装成功后会出现这个。

5、初始化 box

vagrant init centos/7

执行该命令后,会在目录中生成一个 Vagrantfile 文件。

该文件中都是默认配置,我们修改一下 Vagrantfile 文件,  使用下面内容。可以启动多 Node,更改 hostname 和 ip就行

# -*- mode: ruby -*-
# vi: set ft=ruby :Vagrant.configure("2") do |config|config.vm.hostname = "node"config.vm.box = "centos/7"config.vm.network "private_network", ip: "192.168.56.100", netmask: "255.255.255.0"config.vm.provider "virtualbox" do |vb|# 设置虚拟机的名称vb.name = "node"# 设置虚拟机的内存大小vb.memory = "2048"# 设置虚拟机的CPU个数vb.cpus = 2endend

6、启动镜像

vagrant up

如果出现下面红色信息,可以忽略,不影响启动

There was an error when attempting to rsync a synced folder.
Please inspect the error message below for more info.

启动后,打开 virtualBox 软件,就能看到虚拟机已经启动,配置也是按照 Vagrantfile 中生成的

执行命令登录到虚拟机 

vagrant ssh

7、打开登录密码配置(非必须)

如果后续你有 scp 等命令操作,需要打开登录密码配置。

vagrant 的默认账号 root  密码: vagrant

vi /etc/ssh/sshd_config

修改这个参数,原数据是 no: PasswordAuthentication yes


第二步:安装 docker

1、更新 yum 源

sudo yum update

这一步如果出现问题,就多执行几遍。

如果这一步问题比较多,那么去看一下上面 box镜像是否是本地安装。在线安装的话,这一步问题比较多。

2、安装需要的软件包

yum-util 提供yum-config-manager功能,另外两个是devicemapper驱动依赖的

sudo yum install -y yum-utils device-mapper-persistent-data lvm2

3、设置yum源为阿里云

sudo yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo

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

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

相关文章

stm32f103--按键播放音乐

目录 一、了解一下延时函数 二、准备音频数据表 三、了解一下蜂鸣器 四、音乐奏响原理 (1)了解一个音调中的更加细致的小声音 (2)发出一个音调的声音 五、按键发出声音 一、了解一下延时函数 1s1000ms1000000us 如果是1us…

Elasticsearch .NET 客户端的演变

作者:Florian Bernd 在 .NET 世界中,与 Elasticsearch 的集成长期以来一直由 NEST 库提供支持,该库作为开发人员与 Elasticsearch 强大的搜索和分析功能进行交互的强大接口。NEST 是出于对 Elasticsearch 本地 .NET 客户端的需求而诞生的&am…

vue-treeselect 的基本使用

vue-treeselect 的基本使用 1. 效果展示2. 安装 插件3. 引入组件4. 代码 1. 效果展示 2. 安装 插件 vue-treeselect是一个树形的下拉菜单,至于到底有多少节点那就要看你的数据源有多少层了,挺方便的。下面这个这个不用多说吧,下载依赖 npm in…

基本模拟概念

目标: 讨论模拟电子技术的基本特性 描述模拟信号 分析信号源 解释放大器的特性 1.1模拟电子学 电子学可以划分成很多的分类来研究。其中最基本的一种分类方式是将信号分成可由 二进制数字表示的数字信号和由连续变化量表示的模拟信号。数字电子学包括所有的算术 和…

MAC安装CocoaPods遇到的错误Failed to build gem native extension.

MAC安装CocoaPods遇到的错误Failed to build gem native extension. 配置flutter环境的时候报错cocoapods不可用 发现已经安装了CocoaPods,但是不能用 重新安装CocaPods sudo gem install cocoapods重新安装报错如下: 安装RVM curl -L https://get.r…

netlink_kernel_create

netlink_kernel_create 是 Linux 内核中的一个函数,主要用于创建 Netlink 套接字,以便于内核与用户空间的通信。 该函数的原型如下: static inline struct sock *netlink_kernel_create(struct net *net, int unit, unsigned int groups, voi…

第十一章数据仓库和商务智能10分

【数据仓库-后端,商务智能-前端】 基本算法:关联关系(牵手-谈恋爱),集群关系(杭州人爱吃酸甜口),决策树,线性回归,贝叶斯,神经网络,时…

力扣第18题. 四数之和

题目: 给定一个包含 n 个整数的数组 nums 和一个目标值 target,判断 nums 中是否存在四个元素 a,b,c 和 d ,使得 a b c d 的值与 target 相等?找出所有满足条件且不重复的四元组。 注意: …

为什么说日本茶道源于中国茶文化

茶,始于药,而后为饮茶,始于药,而后为饮。在8世纪的中国,茶就作为一桩雅事而进入一个诗意王国。而日本则在15世纪将其尊崇为一种美的宗教——茶道。 茶道,是在日常染污之间,因由对美的倾慕而建立…

redis五种类型介绍

Redis是一种内存数据存储系统,它支持五种不同的数据类型: 1. String String是Redis中最基本的数据类型,它可以存储任何形式的字符串数据,例如普通的文本字符串,二进制数据或JSON格式的数据。除此之外,还可以…

【ARM Trace32(劳特巴赫) 使用介绍 15 -- 通过 nRESE从CPU第一条指令开始Debug】

请阅读【嵌入式开发学习必备专栏 】 文章目录 Trace32 NRESETNRESET 作用nRESET 使用介绍JTAG 特定引脚控制CPU第一条指令开始进行 debug注意事项Trace32 NRESET 在 TRACE32 系统中,nRESET 是一个非常重要的概念,它直接关联到目标系统(通常是一个微处理器或微控制器)的硬件…

快手本地生活服务商入驻方法来了!超简单

本地生活市场正如一座蕴藏丰富的金矿,亟待我们去挖掘其潜在的价值。在2023年这个消费市场全面回暖的年份,服务零售行业的增速犹如一匹黑马,远远超过了商品零售。据权威数据显示,服务零售额的增长幅度高达20%,比商品消费…

前端开发框架BootStrap

版权声明 本文原创作者:谷哥的小弟作者博客地址:http://blog.csdn.net/lfdfhl BootStrap概述 Bootstrap是一个开源的前端框架,它由Twitter的设计师和开发者创建并维护。Bootstrap提供了许多现成的Web组件,可帮助开发者快速设计和…

Spring (四) 之配置及配置文件的操作

文章目录 1、Spring 基于注解的配置基于注解的配置引入依赖包配置实体类数据访问层业务层业务层实现测试 2、Bean和Component和Configuration的区别1 Bean:2 Component:3 Configuration:总结: 区别Component和Configuration区别 3、Spring读取properties配置文件准备…

第一届AI Agent智能体现场开发大赛报名开启!8月上旬火热开赛~

由联想拯救者、AIGC开放社区、英特尔携手主办的“AI生成未来第二届拯救者杯OPENAIGC开发者大赛”已经正式启动,“2024 AI Agent极限挑战赛”作为特设专项赛道,也将同步于8月上旬开赛,参赛者将在更加紧张刺激的现场比赛中展现其技术与创造力。…

Lua中文语言编程源码-第十节,更改ltm.c 元格操作函数, 使Lua加载中文库关键词(执行诸如__索引,__新索引,__加等元表操作)

源码已经更新在CSDN的码库里: git clone https://gitcode.com/funsion/CLua.git 在src文件夹下的ltm.c 表格操作函数,此模块是C语言编写的,是Lua语言中的一个库文件,主要用来提供元表操作的功能。 该库提供了许多函数&#xff…

抖音小店新店铺起飞式玩法,这几步一定要做好,前期很重要

大家好,我是电商笨笨熊 进入抖音小店后不知道该怎么操作,不清楚如何让新店快速起店; 今天我们就来聊聊新店铺快速起店的几个关键步骤,新手玩家一定要按照流程去做。 第一步:店铺搭建 小店开通之后不要着急选品上架&…

OpenAI 选择东京作为其首个亚洲办事处

新办事处旨在促进与日本政府、当地企业和研究机构的合作,开发适合日本独特需求的人工智能工具。 之所以选择东京作为OpenAI在亚洲的第一家企业,是因为这里拥有全球领先的技术、致力于服务的文化和创新的社区。 "OpenAI 首席执行官 Sam Altman 解释…

MGRE环境下的ospf实验

MGRE环境下的ospf实验 一.拓扑图 二.实验步骤 1.分配各路由网段IP [R1]int g 0/0/0 [R1-GigabitEthernet0/0/0]ip address 16.0.0.1 24 [R1-GigabitEthernet0/0/0]int g 0/0/1 [R1-GigabitEthernet0/0/1]ip address 116.0.0.1 24[R2]int g 0/0/0 [R2-GigabitEthernet0/0/0]…

Docker+Uwsgi部署Django项目

在之前的文章中,已经给大家分享了在docker中使用django自带的命令部署项目,这篇文章主要讲解如何使用uwsgi部署。 1. 在Django项目的根目录下新建Dockerfile文件 #Dockerfile文件 # 使用 Python 3.9 作为基础镜像 FROM python:3.9# 设置工作目录 WORKDI…