ホームページ >バックエンド開発 >PHPチュートリアル >Windows に vagrant をインストールするにはどうすればよいですか?

Windows に vagrant をインストールするにはどうすればよいですか?

零下一度
零下一度オリジナル
2017-06-23 11:40:381930ブラウズ

vagrant は仮想マシンの操作を容易にするソフトウェアであり、仮想マシンを使用すると次のような利点があります。

1. 開発環境を本番環境と一致させるため (多くの開発環境は Windows で、本番環境は Linux です)、開発環境には表示されません 通常、正式な本番環境に移行するとさまざまな問題が発生しますが、Vagrant はファイルを共有することで、ホスト (Windows) 上の IDE でコードを記述し、仮想マシン (Linux) で直接実行できます。 ) 効果を示します。

2. vagrant で開発環境を一度一致させるだけで、一致した環境のシステム イメージをパッケージ化し、他の同僚に vagrant と virtualBox をダウンロードして共有ディレクトリを設定するだけで済みます。開発後は、環境の構成について心配する必要はなくなります。

3. 現在、swoole、redis などの多くの拡張機能は Linux のサポートが強化されており、中には Linux のみをサポートするものもあります。そのため、仮想マシンを使用すると、新しいテクノロジーを学ぶために言い訳をする必要がなくなります。

関連環境マシン ソフトウェア バージョン: ホスト: win7; 仮想マシン: CentOS 6.5 x86_64; virtualBox: 5.2

1. virtualBox をダウンロードします。アドレスはここです、インストールします 2. vagrant をダウンロードします、アドレスについてはここをクリックしてインストールします

3. イメージをダウンロードします。ダウンロードできる場所はいくつかあります: http://www.vagrantbox.es/ と http: //www.vagrantbox.es/、ここで centos65-x86_64-20140116 を見つけました

4. ダウンロードしたイメージをロードします。ちなみに、Vagrant はオンライン イメージのインストールをサポートしていますが、Great Wall のため必要ありません。他の方法でイメージをダウンロードしてローカルにロードすることをお勧めします。 cmd を開いて次のコマンドを入力します:

# 命令是这样的,title为自己起的名字,url为box地址,可以在线也可以本地
# vagrant box add {title} {url}
# 实际安装命令,本地下载下来的
vagrant box add CentOs6.5_64 E:\boxes\centos65-x86_64-20140116.box

5. vagrant_project などのディレクトリを検索/作成し、環境を初期化します。

#新建目录
mkdir vagrant_project
#打开此目录
cd vagrant_project
#初始化,CentOs6.5_64为你上方设置的title
vagrant init CentOs6.5_64
初期化が成功すると、

このようなファイルがこのディレクトリに表示されます。これは Vagrant 設定ファイルであり、以降の設定はここで変更できます

6. まずデフォルトの設定を使用して開始します:

vagrant up
Vagrantfile起動情報が表示されます:

==> default: Clearing any previously set forwarded ports...==> default: Clearing any previously set network interfaces...==> default: Preparing network interfaces based on configuration...
    default: Adapter 1: nat
    default: Adapter 2: hostonly==> default: Forwarding ports...
    default: 22 (guest) => 2222 (host) (adapter 1)==> default: Running 'pre-boot' VM customizations...==> default: Booting VM...==> default: Waiting for machine to boot. This may take a few minutes...
    default: SSH address: 127.0.0.1:2222//注意这里default: SSH username: vagrant//这里    default: SSH auth method: private key
    .......
エラーが報告されなければ、起動は成功したとみなされます。エラーがある場合は、Google または Baidu を検索してください。私が遭遇した主なエラーは、

デフォルト: SSH でスタックしていることです。認証方法: 秘密キー

。最も可能性の高い理由は、このマシンで仮想化テクノロジが有効になっていないことです。コンピュータを再起動し、F2 キーまたはその他のキーを押して BIOS 設定に入り、仮想化に関連する単語を見つけてオンにします。
7. 現時点では、Putty または xshell を使用して Windows で接続できます。ホスト アドレスは、

127.0.0.1:

2222

です。 vagrant 現時点では、デフォルトの共有フォルダー関係は、Windows では vagrant_project

フォルダー、Linux では

/vagrant フォルダーとなります。フォルダーはいくつでも作成できます。ファイルを使用して、2 つのパーティが同期されているかどうかをテストします 8. 設定する必要のある設定がまだたくさんあるため、それらを一時的に閉じて、再度開始することができます。設定が完了したら

#关闭
vagrant halt
#重启
vagrant reload

2. ネットワーク設定、共有ディレクトリ、およびその他の関連設定

上記はインストールと開く簡単な使用方法のみを示していますが、実際に使用するには追加の設定が必要です上記の Vagrantfile 設定ファイルを開いて設定します。コメントアウトした場合は、削除することを選択してください1. Vagrant には 3 つの設定方法があります: ここをクリックして公式 Web サイトのドキュメントを参照してください。 a. ホスト LAN 内で、仮想マシンのポートをホストのポートにマッピングするポート マッピング このポートにアクセスすることで、仮想マシン上のものにアクセスできます

config.vm.forwarded_port 80, 8080

上記の機能は、ホスト LAN 内の 80 番ポートをマッピングすることです。仮想マシンをホストの 8080 ポートに接続すると、ホストの 8080 ポートへの直接アクセスは、仮想マシンのポート 80 にアクセスすることと同じになります

b. ホストのみが仮想マシンのコンテンツにアクセスできます。メイン LAN のメンバーは仮想マシンにアクセスできません

config.vm.network "private_network", ip: "192.168.33.10"

上記の設定が完了すると、192.168.33.10 マシン経由で仮想マシンにアクセスできるようになります。 192.168.33.10 は気軽に設定することもできますが、注意が必要です。ホストの IP が 192.168.1.xxx フィールドにある場合は、競合を避けるために 2.xxx または 3.xxx などを使用できます。

c. 共有ネットワーク、ホスト LAN 内のメンバーは仮想マシン内のコンテンツにアクセスでき、仮想マシンは LAN のメンバーに相当します

config.vm.network "public_network", ip: "192.168.1.120"

  以上配置一般来说开发环境也不需要局域网内成员访问,所以大部分情况下是选择用b、私有网络来开发,这个可根据实际情况来选择。

2、共享目录,用户可以自定义共享目录,在Vagrantfile配置文件中配置:

#禁用原有的默认的共享目录
config.vm.synced_folder '.', '/vagrant', disabled: true#增加新的共享目录,第二个参数以当前文件夹为基准
config.vm.synced_folder "abc", "/www/web/abc",

上方相当与windows下的vagrant_project/abc文件夹对应linux下的/www/web/abc文件夹

除了可以自定义共享文件外,还可以选择共享的方式,vagrant有四种共享的方式,官网文档请点这里查看

  a、NFS共享方式,windows平台无法使用此配置,且用此方式时不能修改文件的所有者和所有组

  b、RSync共享方式,所有平台都可以使用,但这种方式貌似有个缺点就是主机的改动可以同步到虚拟机中,但虚拟机中的改动无法同步到主机中,如果要实现双向同步可能还需做其它设置,由于没有用过,所以不太清楚。

  c、SMB共享方式,只有windows平台可以使用,曾有找一些资料来配置,但一直没有成功,所以具体的并不太清楚,但貌似效率是挺不错的。

  d、VirtualBox共享方式,这是VirtualBox提供的也是vagrant默认的共享方式。当文件数量小时用着不错,当文件数量大的时候打开网页会卡到超时。

总之以上,如果主机是mac,则推荐用NFS共享方式,如果是windows则推荐用smb或者rsync方式,如果文件很少,那用默认的就可以了。

但除了上方说的,windows下其实还有方式可以加快网站访问速度,那就是用Vagrant WinNFSd这款插件,插件地址点这里,这种方式是windows下提高速度最简单的方式了:

vagrant plugin install vagrant-winnfsd

安装完成后配置type为nfs,虽然官网上说nfs不能应用于windows,但用这个插件后就可以了。

config.vm.synced_folder "abc", "/www/web/abc",type:"nfs"

测试了下,此插件还是非常有效的,原先打开yii2框架的文件会超时,或10、20多秒,但用了这个后响应在2s以内,还是可以接受的。另提供一个参考资料:让Vagrant在Windwos下支持使用NFS/SMB共享文件夹从而解决目录共享IO缓慢的问题

 三、域名访问及打包分发

1、域名访问,主要是虚拟的本地域名配置问题

这里还是安装了lanmp_v3.1,具体的安装方法可以看以前的文章:Linux下安装LANMP环境或者去下载官网上去找安装说明

新建一个站点,指定目录到共享的目录,随便取个虚拟的域名:www.abc.com

测试需要在主机中修改host,如下:(至于虚拟机中/etc/hosts文件中,测试修改与不修改都不影响访问)

192.168.33.10    www.abc.com192.168.33.10    abc.com

然后直接在浏览器中用既可显示虚拟机中的内容了。而直接在windows中的的IDE修改文件,会实时通过这个网址展示出来。

2、打包分发

vagrant package

等待一段时间,会发现在目录生成一个package.box的文件,这个就是已经包含安装环境的镜像了,将此镜像发给同事,让其安装上方所属的步骤加载镜像vagrant box add {title} {url}命令,然后配置自己的网络及共享文件夹就可以直接开发了,远离重新配置环境的烦恼。

以上就是vagrant常用的一些操作,挺不错的,试试吧!

以上がWindows に vagrant をインストールするにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。