11---
2- title : 开发 - Vagrant
2+ title : 使用 Vagrant 在虚拟机运行开发环境
33sort : 11
44contributors :
55 - SpaceK33z
@@ -11,7 +11,7 @@ translators:
1111 - lcxfs1991
1212---
1313
14- 如果你在开发一个更加高级的项目,并且使用 [ Vagrant] ( https://www.vagrantup.com/ ) 来实现在虚拟机(Virtual Machine)上运行你的开发环境,那你可能会需要在虚拟机中运行 webpack。
14+ 如果正在开发一个更加高级的项目,并且需要使用 [ Vagrant] ( https://www.vagrantup.com/ ) 在虚拟机上运行开发环境,那可能会需要在虚拟机中运行 webpack。
1515
1616## 配置项目 $#configuring-the-project$
1717
@@ -23,13 +23,13 @@ Vagrant.configure("2") do |config|
2323end
2424```
2525
26- 然后,在项目中安装 ` webpack ` 、` webpack-cli ` 、` @webpack-cli/serve ` 和 ` webpack-dev-server ` ;
26+ 然后,在项目中安装 ` webpack ` 、` webpack-cli ` 、` @webpack-cli/serve ` 和 ` webpack-dev-server ` :
2727
2828``` bash
2929npm install --save-dev webpack webpack-cli @webpack-cli/serve webpack-dev-server
3030```
3131
32- 确保提供一个 ` webpack.config.js ` 配置文件。如果还没有准备 ,下面的示例代码可以作为起步的最简配置:
32+ 创建 ` webpack.config.js ` 配置文件,下面的示例代码可以作为起步的最简配置:
3333
3434``` js
3535module .exports = {
@@ -38,7 +38,7 @@ module.exports = {
3838};
3939```
4040
41- 然后,创建一个 ` index.html ` 文件。其中的 ` script ` 标签应当指向你的 bundle。如果没有在配置中指定 ` output.filename ` ,其默认值是 ` bundle.js ` 。
41+ 然后,创建一个 ` index.html ` 文件。其中的 ` script ` 标签应当指向 bundle。如果没有在配置中指定 ` output.filename ` ,其默认值为 ` bundle.js ` 。
4242
4343``` html
4444<!DOCTYPE html>
@@ -52,18 +52,17 @@ module.exports = {
5252</html >
5353```
5454
55- 注意,你还需要创建一个 ` app.js ` 文件。
55+ 注意,还需要创建一个 ` app.js ` 文件。
5656
5757## 启动服务器 $#running-the-server$
5858
59- 现在,我们启动服务器 :
59+ 现在启动服务器 :
6060
6161``` bash
6262webpack serve --host 0.0.0.0 --client-web-socket-url ws://10.10.10.61:8080/ws --watch-options-poll
6363```
6464
65- 默认只允许从 localhost 访问服务器。所以我们需要修改 ` --host ` 参数,
66- 以允许在我们的宿主 PC 上访问。
65+ 由于默认只允许从 localhost 访问服务器,所以需要修改 ` --host ` 参数,以允许在我们的宿主 PC 上访问。
6766
6867` webpack-dev-server ` 会在包中引入一个脚本,此脚本连接到 WebSocket,这样可以在任何文件修改时,触发重新加载应用程序。
6968` --client-web-socket-url ` 标志可以确保脚本知道从哪里查找 WebSocket。默认情况下,服务器会使用 ` 8080 ` 端口,因此也需要在这里指定。
@@ -74,9 +73,9 @@ webpack serve --host 0.0.0.0 --client-web-socket-url ws://10.10.10.61:8080/ws --
7473
7574## 配合 nginx 的高级用法 $#advanced-usage-with-nginx$
7675
77- 为了更好的模拟类生产环境(production-like environment),还可以用 nginx 来代理 ` webpack-dev-server ` 。
76+ 为了更好的模拟类生产环境,可以使用 nginx 来代理 ` webpack-dev-server ` 。
7877
79- 在你的 nginx 配置文件中,加入下面代码:
78+ 在 nginx 配置文件中,加入下面代码:
8079
8180``` nginx
8281server {
@@ -103,8 +102,8 @@ server {
103102webpack serve --client-web-socket-url ws://10.10.10.61:8080/ws --watch-options-poll
104103```
105104
106- 现在只能通过 ` 127.0.0.1 ` 访问服务,这点关系不大 ,因为 ngnix 能够使得你的 PC 电脑能访问到服务器 。
105+ 现在只能通过 ` 127.0.0.1 ` 访问服务,不过这并不影响 ,因为 ngnix 已经能够支持 PC 电脑访问到服务器 。
107106
108- ## 结论 $#conclusion$
107+ ## 总结 $#conclusion$
109108
110- 我们能够从静态 IP 访问 Vagrant box ,然后使 ` webpack-dev-server ` 可以公开访问,以便浏览器可以访问到它。然后,我们解决了 VirtualBox 不发送到文件系统事件的常见问题,此问题会导致服务器无法重新加载文件更改。
109+ 我们能够从静态 IP 访问 VagrantBox ,然后使 ` webpack-dev-server ` 可以公开访问,以便浏览器可以访问到它。最后解决了 VirtualBox 不发送到文件系统事件的常见问题,此问题会导致服务器无法重新加载文件更改。
0 commit comments