目前Vagrant只支持VirtualBox versions 4.0.x, 4.1.x, 4.2.x, 4.3.x, 5.0.x, 5.1.x, and 5.2.x. 其它版本不支持,大家的virtualbox如果不是这几个版本,请卸载重新安装
vagrant安装地址
创建centos/7虚拟机
1 | vagrant init centos/7 |
可添加以下脚本自动按照docker
1
2
3
4
5
6
7
8#按照docker容器的预处理命令
config.vm.provision "shell", inline: <<-SHELL
sudo yum remove docker docker-client docker-client-latest docker-common docker-latest docker-latest-logrotate docker-logrotate docker-engine
sudo yum install -y yum-utils device-mapper-persistent-data lvm2
sudo yum-config-manager -y --add-repo https://download.docker.com/linux/centos/docker-ce.repo
sudo yum install docker-ce docker-ce-cli containerd.io
sudo systemctl start docker
SHELL安装centos/7虚拟机
vagrant up
连接Vagrantfile定义的虚拟机
vagrant ssh
查看虚拟机状态
vagrant status
停止虚拟机
vagrant halt
删除虚拟机
vagrant destroy
将vagrant添加到docker组,避免报权限错误
sudo groupadd docker
添加vagrant到docker服务
sudo gpasswd -a vagrant docker
重启docker服务
sudo service docker restart
退出重连
1
2exit
vagrant ssh
常见问题及处理方法
修复vagrant创建的虚拟机报这个错
1
bash: warning: setlocale: LC_CTYPE: cannot change locale (UTF-8): No such file or directory
在虚拟机中打开环境文件
vim /etc/environment
加入1
2LC_ALL=en_US.UTF-8
LANG=en_US.UTF-8或者 输入命令
1
sudo chmod 777 /etc/environment && sudo echo -e "LC_ALL=en_US.UTF-8 \nLANG=en_US.UTF-8" >> /etc/environment && sudo chmod 644 /etc/environment
然后退出重新登录即可
vagrant使用root用户登录
可参照一下博客
vagrant使用root用户登录
注:
在root用户修改sshd_config文件
vim /etc/ssh/sshd_config
修改PermitRootLogin
值为yes
修改PasswordAuthentication
yes
重启sshd服务
systemctl restart sshd
yum进程被占用
可以通过强制关掉yum进程
rm -f /var/run/yum.pid