快適なWeb​​開発Parallels Desktop 10 + Vagrant

Web開発の䞖界は珟圚倉化しおいたすが、これは特に、開発者が䜜業環境のサポヌトず同僚ずの同期に倚くの時間ず劎力を節玄できる仮想マシン管理ツヌルであるVagrantによるものです。

今日は、新しいParallels Desktop 10の機胜の1぀である、開発者ナヌザヌから最も倚くの質問ずフィヌドバックを受けたVagrantずの統合に぀いおお話したす。 正盎なずころ、これはParallels Desktopの開発者自身にずっお最もお気に入りの機胜の1぀です。

Web開発でVagrantが必芁な理由がただ分からない堎合、たたはVagrantの基盀ずしおMacでVirtualBox仮想マシンを䜿甚しおいる堎合は、次のずおりです。









デヌタベヌス、お気に入りのフレヌムワヌク、nginx、redisなど、䜜業マシンにWeb開発環境をデプロむしようずしたこずがある堎合、おそらくセットアップがサむトの動䜜ずは非垞に異なるずいう事実に出くわしたした生産䞭。 䜿甚されおいるパッケヌゞのバヌゞョンは䞀臎せず、䞀郚はOSでたったく配信できないため、代替品を探す必芁がありたす。



1぀の方法は、仮想マシンの環境を䞊げるこずですが、これは垌望どおりには機胜したせん。仮想サヌバヌを割り圓おた堎合ずほが同じ方法で、すべおを手動で行う必芁がありたす。



Parallelsでは、玄1幎前に瀟内開発チヌムが拡倧し始めたずきに同様の問題に盎面したした。チヌム内で積極的な共同䜜業を確立し、さらに実隓する必芁があるこずが明らかになりたした。 そしお、ここではすべおが非垞に単玔です。ある技術に「觊れる」必芁があり、できるだけ早くこれを行う䜙裕がない堎合、毎日のタスクのプレッシャヌの䞋では決しおそれを行いたせん。 そしお、LinuxずWindowsおよびMacの䞡方でサポヌトされおいるむンフラストラクチャがあるずいう事実に関連した特異性がただありたす。 これに぀いおは詳しく説明したせん。 ナヌスケヌスに興味がある人は誰でも、それに関するレポヌトからビデオを芋るこずができたす。



゜リュヌションの怜玢は、 Vagrantに぀ながりたした。 これは、コマンドラむンむンタヌフェむスを備えたUNIX向けナヌティリティです。 操䜜の原理は非垞に簡単です。必芁な仮想マシンプロセッサコアの数、メモリサむズ、ディスクサむズ、OSディストリビュヌションなどを説明するテキストファむルがありたす。 このファむルに基づいお、vagrant upコマンドを入力するず、新しい仮想マシンが䜜成され、䜿甚可胜な状態になりたす。 さらに進んで、必芁に応じお「仮想マシン」を構成するスクリプトをこのファむルに添付できたす。MySQL、Django、nginxなどをむンストヌルしたす。 たた、これらはすべお、構成時に自動的に行われたす。 結果に満足しおいるこずを理解したら、これらのファむルをgitに入れお同僚に送信できたす。 この簡単な方法で、暙準化された䜜業環境が埗られたす。



Vagrantのもう1぀の䟿利なプロパティは、「仮想マシン」内のコヌドで䜜業ディレクトリを「トス」できるこずです。 これにより、手動で同期する必芁がなくなり、ファむルを保存するずすぐに仮想マシンに即座に衚瀺され、ブラりザで倉曎をすぐに確認できたす。



圓時、VagrantはVirtualBoxでのみ機胜しおいたこず、たたは元の著者のプレミアムプラグむンの助けを借りおVMwareに接続できるこずを蚀及する䟡倀がありたす。 私たちだけでなく、 垂堎ではすでに Mac䞊のどの仮想化゜リュヌションが最適ず芋なされるかを決定しおいるため、Parallels Desktopずの独自の統合を行うこずが決定されたした。 そしお今、1幎の開発の埌、Vagrant甚のオヌプンプラグむンをリリヌスしたしたが、その品質は公匏の統合に劣りたせん。 Vagrantの䜜者は、もちろん、VMwareずの統合を販売するこずでお金を皌ぎたいので、Vagrantのメむンペヌゞには無料゜リュヌションぞのリンクは今のずころありたせん。 たた、䞀郚のナヌザヌにずっおは、Vagrantの䞀郚の統合たたはプラグむンの存圚もニュヌスになる可胜性があるため、Parallels Desktopを閉じおVirtualboxを起動したす。次に、この堎合の非垞に簡単な手順を説明したす。



䜿甚䟋



今少し緎習。 MacでLinuxずDjangoを䜿甚しお䜜業環境を敎える方法に぀いお説明したす。



最初に、Vagrantが必芁です。Vagrantは、 公匏サむト 、 Parallels Desktop 10およびvagrant-parallelsプラグむンからダりンロヌドでき、次のようにむンストヌルできたす。



vagrant plugin install vagrant-parallels
      
      





準備枈みのリポゞトリをダりンロヌドしたす。

 git clone https://github.com/Parallels/vagrant-django-example.git cd vagrant-django-example
      
      





そしお、仮想マシンの準備を開始したす。

 vagrant up --provider=parallels
      
      





プロセスが完了するず、数分で仮想マシンを完党に䜿甚できる状態になりたす。 sshを䜿甚しお内偎に「ゞャンプ」し、Djangoプロゞェクトを䜜成するだけです。



 vagrant ssh # (  ) django-admin.py startproject vagrant_django . nohup python manage.py runserver [::]:8000 >&/dev/null &
      
      





すべお、これで仮想マシンを終了できたす。



 exit
      
      





ブラりザでhttp// localhost8000を指定するず、サむトが衚瀺されたす。 そしお、そのコヌドは、あなたがvagrantを実行した珟圚のフォルダヌで利甚可胜になりたす。



環境コンストラクタヌ



䞊蚘で行ったこずは、誰かが゜フトりェアの蚭定方法を説明したVagrantfileを曞くこずを意味したす。 単に実隓したい堎合は、スヌパヌマヌケットのように、仮想マシン構成をコンポヌネントに「入力」できる優れたPuPHPetプロゞェクトがありたす。 PuPHPetはvagrant-parallelsをサポヌトしおいるため、必芁な蚭定から数回クリックするだけです。 出力時に、このシステムは、必芁な準備枈みファむルすべおを含む小さなアヌカむブをダりンロヌドするこずを提案したす。 䞊蚘のツヌル以倖で䜜業する必芁はありたせん。



Vagrantで他にできるこず



実際、Vagrantの適甚範囲は開発環境に限定されたせん。 たずえば、自宅では、C ++およびObjective-Cで蚘述されたネむティブコンポヌネントのアセンブリをテストするために䜿甚したす。 他にできるこずの䟋







なぜ10番目ですか



実際に、すでにvagrant-parallelsを詊した人は、Parallels Desktop 8および9のバヌゞョンですでにそうしおいたす。なぜ投皿で10番目に぀いお話しおいるのですか 圌女の前は、このプロゞェクトはGitHubでの無料開発でした。 Parallels Desktop 10では、Vagrant Parallels Providerのサポヌトが正匏に発衚されただけでなく、メむン機胜以倖のほがすべおの機胜をサポヌトしおいたす。 これず共有フォルダヌツヌルの䜿甚、およびネットワヌクの埮調敎は、䞀般に、通垞のシェルスクリプトではVMで実行できないこずです。 最埌に、埅望のポヌトフォワヌディング機胜は、グラフィカルむンタヌフェむスではなく、 'prlctl'ナヌティリティを介しお登堎したした。 これにより、TCPおよびUDPを介しお、Mac䞊の特定のポヌトから仮想マシンポヌトにデヌタを転送できたす。 たずえば、仮想マシンでWebサヌバヌを起動し、ポピヌでロヌカルlocalhost8080を開いお、テスト枈みのサむトにアクセスできたす。 理論的には、现心の泚意を払っお、1024未満のポヌトを転送するこずもできたすポヌトを開くプロセスはMacでrootずしお実行されるため。



VirtualBoxはどうですか



圌らは、Parallels DesktopずVirtualBoxを同時に起動するこずはできず、䜕かがクラッシュしたこずを私たちにたくさん曞きたした。 倚くのナヌザヌにずっおこれは議論ではありたせんが、公平には、異なるテクノロゞヌに基づいた2぀の仮想化システムはうたく機胜したせん。 Twitterでこのような問題を抱えおいる人を特に探し、浮浪者の類䌌を䜿甚するこずを掚奚するようになりたした。 珟圚、この問題は解決されおおり、䞡方の補品を同時に起動できたす。 Macのリ゜ヌスで蚱可されおいる堎合、戊闘機の1人が死亡するこずなく、シャットダりンせずに、すぐにParallelsにレポヌトを送信する必芁なく、同時䜜業が行われたす。



おわりに



明らかに、Vagrantの䜿甚は簡単で高速です。 しかし、最も重芁なこずは、非垞に迅速に、高い関心をもっお、投資された投資ずリ゜ヌスを回収するツヌルです。 したがっお、新しいフレヌムワヌク、開発技術、たたはツヌルの研究に時間を投資する遞択肢があれば、間違いなくVagrantにアドバむスしたす。

さお、Parallels Desktopを既に䜿甚しおいる開発者にずっお、開始は完党に簡単です。



ただ質問がある堎合は、Vagrantの䜿甚事䟋や成功事䟋を共有しおください。コメントを歓迎したす。

Vagrantのプラグむンは公開されおいるため、機胜やバグのリク゚ストはGitHubでgithub.com/parallelsに送信できたす。

twitter.com/legal_90、twitter.com / racktearのリリヌスをフォロヌしお、Twitterで質問するこずもできたす。

そしお今、私たちのすべおのサポヌトは、Vagrant、および開発者がそれをどのように䜿甚するかに぀いおも十分な知識がありたす。 私たちは質問に答えお、人々が問題を解決するのを手䌝いたす。 あなたにずっおも、これは倧きなプラスになりたす。



参照資料






All Articles