0-安装Vagrant和使用
Vagrant 是一款软件,可以自动化虚拟机的安装和配置流程。用来管理虚拟机,如 VirtualBox、VMware、AWS等,主要好处是可以提供一个可配置、可移植和复用的软件环境,可以使用shell、chef、puppet等工具部署。所以vagrant不能单独使用,如果你用它来管理自己的开发环境的话,必须在自己的电脑里安装了虚拟机软件,我使用的是 virtualbox。
Vagrant提供一个命令行工具 vagrant,通过这个命令行工具可以直接启动一个虚拟机,当然你需要提前定义一个Vagrantfile文件,这有点类似 Dockerfile 之于 docker 了。
Vagrant 官网地址。
Vagrant 安装
下载安装即可。
验证是否安装成功:
vincent@dell-Inspiron-7559 ~/virtual-os vagrant --help ✔ 1000 14:28:05
Usage: vagrant [options] <command> [<args>]
-v, --version Print the version and exit.
-h, --help Print this help.
Common commands:
box manages boxes: installation, removal, etc.
cloud manages everything related to Vagrant Cloud
destroy stops and deletes all traces of the vagrant machine
global-status outputs status Vagrant environments for this user
halt stops the vagrant machine
help shows the help for a subcommand
init initializes a new Vagrant environment by creating a Vagrantfile
login
package packages a running vagrant environment into a box
plugin manages plugins: install, uninstall, update, etc.
port displays information about guest port mappings
powershell connects to machine via powershell remoting
provision provisions the vagrant machine
push deploys code in this environment to a configured destination
rdp connects to machine via RDP
reload restarts vagrant machine, loads new Vagrantfile configuration
resume resume a suspended vagrant machine
snapshot manages snapshots: saving, restoring, etc.
ssh connects to machine via SSH
ssh-config outputs OpenSSH valid configuration to connect to the machine
status outputs status of the vagrant machine
suspend suspends the machine
up starts and provisions the vagrant environment
upload upload to machine via communicator
validate validates the Vagrantfile
version prints current and latest Vagrant version
winrm executes commands on a machine via WinRM
winrm-config outputs WinRM configuration to connect to the machine
For help on any individual command run `vagrant COMMAND -h`
Additional subcommands are available, but are either more advanced
or not commonly used. To see all subcommands, run the command
`vagrant list-commands`.
安装虚拟操作系统Centos7
1.创建centos7
文件夹,并进入此文件夹执行以下命令:
vagrant init centos/7
这一步相当于创建
centos/7
操作系统的描述信息,这些信息在Vagrantfile
文件内。
2.创建虚拟机,执行下面命令
vagrant up
此命令为下载 box base
,可以理解为 docker
的image
镜像。
此过程需要很久,因为墙的原因。
下载完成后会自动安装,只需要等待就好了。
同时可以在 VirtualBox 管理器中可以看到 已经正在安装的虚拟机
3.ssh
登录,使用下面命令
vagrant ssh
执行命令后将会进入centos/7
的系统命令行。
删除虚拟系统
-
查看当前系统状态
vagrant status
Current machine states: default running (virtualbox) The VM is running. To stop this VM, you can run `vagrant halt` to shut it down forcefully, or you can run `vagrant suspend` to simply suspend the virtual machine. In either case, to restart it again, simply run `vagrant up`.
-
如果是运行状态先停止
vagrant halt
然后再次查看状态是否关机
vagrant status
default poweroff (virtualbox) The VM is powered off. To restart the VM, simply run `vagrant up`
-
删除系统
vagrant destroy
回答
y
即可确认删除
查看 VirtualBox 管理中是否已经删除
Vagrantfile 下载
vagrantfile
类似 docker 的 Dockerfile
,其实也是有很多人制作了现成的文件供我们使用。
大家可以到 Vagrant Cloud 网站搜索下载。
拷贝文件
- 安装插件
vagrant plugin install vagrant-scp
- 查看虚拟机名称
vagrant global-status
id name provider state directory
------------------------------------------------------------------------
bca430a default virtualbox running /home/vincent/virtual-os/centos7
- 从本地拷贝到虚拟机
vagrant scp /home/vincent/backend/go-dev/proxy-v default:~
开启ssh登录
首先进入虚拟机。
开启密码验证
sudo nano /etc/ssh/sshd_config
找到passwordAuthentication
项,修改成yes
重启ssh服务:
sudo service sshd restart
密码设置:
sudo passwd vagrant
然后使用ssh即可连接。