PhpStorm 2021.3 Help

Vagrant:使用可重现的开发环境

Vagrant是一个命令行实用程序,用于管理虚拟机的生命周期。

PhpStorm 提供与 Vagrant 的完全集成,允许您配置 Vagrant 虚拟环境,控制虚拟机的行为,并在项目中执行 Vagrant 命令。

在使用 Vagrant 的情况下,您将满足以下定义:

  • Vagrantfile:定义 Vagrant 环境的主要配置文件,存储虚拟盒子的所有配置,并告诉 Vagrant 如何使用虚拟机。

  • 虚拟盒:包含预配置虚拟机的虚拟沙盒。Vagrant 与不同的虚拟盒子供应商合作,例如 Oracle 的 VirtualBox、VMWare 或 AWS。

  • 实例:虚拟机。

在本文中,我们将解释如何从 PhpStorm初始化 Vagrantfile指定虚拟框运行虚拟机并与虚拟机交互。

先决条件

  1. 安装并启用Vagrant插件,如从 JetBrains 存储库安装插件中所述。

  2. 安装VagrantOracle 的 VirtualBox应用程序。

  3. 确保在您的计算机上启用了虚拟化。

初始化 Vagrant 文件

要开始使用 Vagrant,您需要初始化Vagrantfile

执行以下操作之一:

  • 打开嵌入式终端( Alt+F12) 并运行以下命令:vagrant init

  • 从主菜单中,选择工具 | 流浪者 | 在 Project Root 中初始化并从打开的窗口中选择目标根文件夹。

Project工具窗口Alt+1中,切换到Project files视图并双击Vagrantfile以在嵌入式编辑器中打开它。

你会看到 Vagrantfile 已经有一个预定义的配置。该config.vm.box = "..."行指定将在项目中使用的虚拟框。

指定虚拟框

例如,我们将指定ubuntu/trusty64框。它包含一个基本的 Ubuntu 虚拟机。您可以根据需要指定任何其他虚拟框。要查找可用虚拟盒子的列表,请参阅发现 Vagrant Boxes

执行以下操作之一:

  • 打开 Vagrantfile 并将config.vm.box = "base"行更改为以下内容:config.vm.box = "ubuntu/trusty64".

  • 设置/首选项对话框 ( Ctrl+Alt+S) 中,选择工具 | 流浪汉。在Boxes窗口中单击添加按钮按钮并指定以下内容:

    • 盒子名称:ubuntu/trusty64

    • 盒子网址:https://app.vagrantup.com/ubuntu/boxes/trusty64

    将虚拟盒子添加到 Vagrant

一旦Vagrantfile初始化完成并指定了虚拟框,您就可以部署和运行虚拟机了。

启动实例

执行以下操作之一:

  • 打开嵌入式终端( Alt+F12) 并运行以下命令:vagrant up.

    您将看到以下输出:

    Vagrant up 的终端输出
  • 从主菜单中,选择工具 | 流浪者 | 起来

SSH 进入正在运行的机器

启动虚拟机时,它在后端运行。要通过 SSH 连接到正在运行的机器:

  • 打开嵌入式终端( Alt+F12) 并运行以下命令:vagrant ssh

控制实例的 Vagrant 命令

要控制实例,请使用 Vagrant 命令。它们可以从终端( Alt+F12) 或主菜单运行。

在本文中,我们只展示了使用虚拟机的最重要的命令。要查找可用 Vagrant 命令的完整列表,请参阅Command-Line-Interface

  • 挂起:挂起实例会暂停所有进程并保存虚拟机的当前状态。

    vagrant suspend终端中运行或选择工具 | 流浪者 | 从主菜单暂停。

  • 恢复:恢复一个实例会启动一个先前挂起的虚拟机。

    vagrant resume终端中运行或选择工具 | 流浪者 | 从主菜单恢复。

  • 重新加载:当您对 Vagrantfile 进行更改并需要 Vagrant 重新加载当前虚拟环境及其配置时,需要重新加载实例。

    vagrant reload终端中运行或选择工具 | 流浪者 | 从主菜单重新加载。

  • 关闭:关闭实例会停止正在运行的虚拟机。

    vagrant halt终端中运行或选择工具 | 流浪者 | 从主菜单停止。

  • 销毁:当您需要删除与先前创建的环境相关的所有内容时,销毁虚拟机很重要。在创建实例期间提供的所有资源都将被删除。

    vagrant destroy终端中运行或选择工具 | 流浪者 | 从主菜单销毁。

最后修改:2021 年 9 月 23 日