vagrant 安装虚拟机,docker, k8s

第一步:安装虚拟机

1、安装 vagrant

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

vagrant 下载地址

bash 复制代码
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 链接出现问题,可以下载百度网盘的

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

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

4、添加 box镜像

bash 复制代码
#查看所有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

bash 复制代码
vagrant init centos/7

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

6、启动镜像

bash 复制代码
vagrant up

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

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

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

执行命令登录到虚拟机

bash 复制代码
vagrant ssh

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

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

vagrant 的默认账号 root 密码: vagrant

bash 复制代码
vi /etc/ssh/sshd_config

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

修改后加载生效

bash 复制代码
systemctl restart sshd

8、更改虚拟机配置 (这一步操作尽量在更新完 yum 源后操作,不然可能会更新yum 源失败 )

默认的虚拟容器启动后,内存是 512M. 可以通过更改 Vagrantfile的方式更改。

把 Vagrantfile 改成下面这样,重新执行 vagrant up就可以了

bash 复制代码
# -*- 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 = 2


   end
 end

第二步:安装 docker

1、更新 yum 源

bash 复制代码
sudo yum update

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

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

2、安装需要的软件包

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

bash 复制代码
sudo yum install -y yum-utils device-mapper-persistent-data lvm2

3、设置yum源为阿里云

bash 复制代码
sudo yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo

4、安装 docker 引擎

bash 复制代码
sudo yum install docker-ce

5、查看 docker 是否安装成功

bash 复制代码
docker -v

6、设置 docker 开机启动

bash 复制代码
sudo systemctl start docker ##启动docker
sudo systemctl enable docker ##设置开机启动
相关推荐
liu****25 分钟前
2.深入浅出理解虚拟化与容器化(含Docker实操全解析)
运维·c++·docker·容器·虚拟化技术
logocode_li1 小时前
OCI/CRI 双标准下:从 dockerd 到 containerd 的 K8s 运行时迭代史
docker·云原生·容器·k8s
_运维那些事儿13 小时前
VM环境的CI/CD
linux·运维·网络·阿里云·ci/cd·docker·云计算
lpruoyu15 小时前
【Docker进阶-05】Docker网络
网络·docker·容器
人间打气筒(Ada)16 小时前
k8s:CNI网络插件flannel与calico
linux·云原生·容器·kubernetes·云计算·k8s
江畔何人初17 小时前
pod的内部结构
linux·运维·云原生·容器·kubernetes
三块钱079418 小时前
群晖docker部署Mattermost,对接openclaw
运维·docker·容器
苦逼IT运维20 小时前
从 0 到 1 理解 Kubernetes:一次“破坏式”学习实践(一)
linux·学习·docker·容器·kubernetes
萧曵 丶20 小时前
Docker 面试题
运维·docker·容器
腾讯云开发者21 小时前
言出法随 -- Chaterm如何通过ASR精准操作K8S
云原生·容器·kubernetes