🔥码云GVP开源项目 12k star Uniapp+ElementUI 功能强大 支持多语言、二开方便! 广告
# 进阶教程 ## 1. 网络配置 > vagrant中一共提供了三种网络配置。这几种配置可以在vagrant的配置文件中看到。 1. 端口映射(Forwarded port) > 这种方式,就是把本机和虚拟机的端口进行映射。比如:我配置本机计算机的8080端口为虚拟机的80端口,这样我访问该机器的8080端口,vagrant会把请求转发到虚拟机的80端口是那个去处理。 ```ruby config.vm.network "forwarded_port", guest: 80, host: 8080 ``` > 通过这种方式,我们可以有针对性的把虚拟机的某些端口公布到外网让其他人去访问。 2. 私有网络(Private network) > 既然是private,那么这种方式是只允许主机访问虚拟机。如果多个虚拟机设定在同一个网段,那么几个虚拟机之间也可以互相访问。这种方式,就好像是搭建了一个私有的linux集群。而且只有一个出口,那就是该主机。 ```ruby config.vm.network "private_network", ip: "192.168.21.4" ``` > 使用这种方式,非常安全,因为只有一个出口,但是你的虚拟机只允许你自己进行操作。团队成员不能操作,那你的电脑就成服务器主机了。 3. 公有网络(Public network) > 虚拟机享受实体机器一样的待遇,一样的网络配置,vagrant1.3版本之后也可以设定静态IP。设定语法如下: ```ruby config.vm.network "public_network", ip: "192.168.1.120" ``` > 这种网络配置方式,方便团队开发,别人也可以访问你的虚拟机。当然,你和你的虚拟机必须在同一个网段中。 > 修改vagrantFile文件,重新执行vagrant up命令,重启虚拟机即可生效。 来源:[CSDN-赵崇](https://blog.csdn.net/zc474235918/article/details/51039150?foxhandler=RssReadRenderProcessHandler) ## 文件同步 1. synced_folder (主宿同步) > 此方式用于把物理机的目录同步到虚拟机里某个目录。第一个参数是主机的相对位置,第二个是虚拟机的绝对路径,如果没有,会递归自动创建。 ```ruby config.vm.synced_folder "/wwwroot/html", "/var/www/html" ``` **同步挂载目录出错解决办法:** [segmentfault](https://segmentfault.com/a/1190000002869922) 2. 通过NFS共享 3. 通过rsync共享