使用vagrant与virtualbox简易安装centos7 与 docker

写在前面环境要求:1.vagrant 2.virtualbox
vagrant下载地址:https://www.vagrantup.com/downloads.html
virtualbox下载地址:https://www.virtualbox.org/wiki/Downloads

一.镜像环境准备(访问外网较快的请跳过此步骤)

官方仓库:https://atlas.hashicorp.com/boxes/search
官方镜像:https://vagrantcloud.com/boxes/search
第三方仓库:http://www.vagrantbox.es/

本文将采取centos7作为实验基础镜像
由于网络原因,在此提供下载百度云镜像地址centos7:https://pan.baidu.com/s/19mcMNhyHrCH0jwXTEMWitw

二.添加本地镜像,初始化box,配置docker下载地址,启动本地环境

1.添加本地box(访问外网较快的请跳过此步骤)

在cmd窗口中,执行如下命令:

vagrant box add centos7 d:/iso/CentOS-7-x86_64-Vagrant-1804_02.VirtualBox.box

*** 命令参考

vagrant box add {title} {url}

说明:title 创建虚拟机的别名;url 是下载到本地box的路径,也可以是服务器端的URL,也可以是中央仓库的镜像名称。

2.初始化box(选择其中一步)

找到需要存放该实例的位置,在cmd窗口中执行如下命令,本文存放在d:/vagrant

------ 2.1 访问外网较快
vagrant init centos/7
------ 2.2 添加过本地box
vagrant init centos7

3.配置docker下载地址

执行第二步后,会有Vagrantfile文件生成。编辑该文件尾部加入

  config.vm.provision "shell", inline: <<-SHELL
    apt-get update
    curl -s https://get.docker.com|sh
  SHELL

如图所示
在这里插入图片描述
说明:在SHELL内容中 可以写linux命令,读者可自定义,虚拟机启动后需要的步骤。本文只是下载了docker。

4.启动本地环境

在cmd窗口中,执行如下命令:

vagrant up

启动日志信息如下:
在这里插入图片描述
注:启动日志中包含了ssh连接信息以及用户名等等

三.修改root密码,ssh配置,docker配置,并设置开机自启docker

在cmd窗口中,执行如下命令,连接上虚拟机:

vagrant ssh

接下来的步骤都是在该虚拟机中操作。

1.修改root密码

在cmd窗口中,执行如下命令,并输入新密码,切换到root用户下

sudo passwd 
//.....输入两次新密码
su root

2.ssh配置

由于ssh默认是用ca认证,没开放密码验证,故有此步骤

cd /etc/ssh
vi sshd_config

将内容中的

# To disable tunneled clear text passwords, change to no here!
#PasswordAuthentication yes
#PermitEmptyPasswords no
PasswordAuthentication no

改为

# To disable tunneled clear text passwords, change to no here!
PasswordAuthentication yes
#PermitEmptyPasswords no
#PasswordAuthentication no

,修改完成后,重启sshd.service服务

service sshd restart

接下来读者可以通过ssh工具连接该虚拟机。本文使用xshell。

3.docker配置

由于docker仓库在外网,国内访问较慢,故使用阿里云镜像加速。
在xshell连接该虚拟机,并在该窗口中执行如下命令:

   sudo tee /etc/docker/daemon.json <<-'EOF'
	{
	  "registry-mirrors": ["https://vcmrfdsm.mirror.aliyuncs.com"]
	}
	EOF
	sudo systemctl daemon-reload
	sudo systemctl restart docker

4.设置开机自启docker

在xshell窗口中,执行如下命令:

systemctl enable docker

四.导出自己的box,留作备用

在cmd窗口中,进入到要备份的Vagrant文件的目录中,例如上面使用的目录d:/vagrant,执行如下命令,关闭虚拟机,导出镜像:

D:\vagrant>vagrant halt
==> default: Attempting graceful shutdown of VM...
D:\vagrant>vagrant package --base centos7-docker --output d:/iso/centos7-docker.box
==> centos7-docker: Clearing any previously set forwarded ports...
==> centos7-docker: Exporting VM...
==> centos7-docker: Compressing package to: d:/iso/centos7-docker.box

注:centos7-docker 虚拟机的名称,这个名称本人已修改
原本如图中所示
在这里插入图片描述

读者可以用过VirtualBox的设置进行修改

这样读者就拥有了一个具有docker的centos7镜像了

附录:

Vagrant命令
命令作用
vagrant box add添加box的操作
vagrant init初始化box的操作,会生成vagrant的配置文件Vagrantfile
vagrant up启动本地环境
vagrant ssh通过ssh登录本地环境所在虚拟机
vagrant halt关闭本地环境
vagrant suspend暂停本地环境
vagrant resume恢复本地环境
vagrant reload修改了Vagrantfile后,使之生效(相当于先 halt,再 up)
vagrant destroy彻底移除本地环境
vagrant box list显示当前已经添加的box列表
vagrant box remove删除相应的box
vagrant package打包命令,可以把当前的运行的虚拟机环境进行打包
vagrant plugin用于安装卸载插件
vagrant status获取当前虚拟机的状态
vagrant global-status显示当前用户Vagrant的所有环境状态
  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值