Vagrant、Python、Pycharm =(便利、作業、Windows)









はじめに


Djangoはよく知られ、最も開発されたWeb開発フレームワークの1つです。 DjangoはPythonで書かれているため、それを使用するにはPythonインタープリターがインストールされている必要があります。 Linux環境で作業している場合、これは問題になりません。 ただし、Windows用のPython開発を行う必要がある場合、イベントはまったく異なる順番を取ります。



Windows用の既製のPythonビルドがありますが、その中でもEnthought PythonAnaconda PythonPythonXYについて言及する価値があります。

もっと簡単な方法があります

Linuxの「標準」Pythonと比較した場合の主な欠点は、インストールに使用できるライブラリのセットが限られていることです。 特に、それらはDjangoではありません。インストールするには、あまり明らかではないアクションを実行する必要があります。



この問題の解決策の1つは、Linuxを搭載した仮想マシンをインストールすることです。 インストールと構成が簡単であるにもかかわらず、仮想マシンを操作すると、多くの不便が生じます。

そのため、仮想マシンはコンピューターリソースを非常に要求し、時には動作が遅くなり、開発者に不快感を与えます。 これは、ブレーキ操作が最もストレスのかかる瞬間に開始される場合(特に、これが最も頻繁に発生する場合)、特に厄介です。 さらに、非常に優れたハードウェア上であっても、PyCharmなどのIDEは快適と思われるモードからはほど遠いモードで動作します。



必要なパッケージのみ、ウィンドウマネージャの欠如などをインストールすることで、パフォーマンスを改善できます。 つまり、仮想マシンを正しく構成する必要があります。 そして、この問題で、 Vagrantは、仮想マシン(VirtualBox、VmWare Player / Workstation)に基づいて完全に完成した作業環境を作成するためのユーティリティです。 Vagrantは仮想マシンをインストールするだけでなく、現在のユーザー構成を使用して新しい仮想マシンを簡単に作成できるようにします。



次のセクションでは、Vagrantデスクトップ環境をインストールして構成し、PyCharmプロジェクトのリモートPythonインタープリターとして使用する方法について説明します。



WindowsでVagrantを使用する




Vagrantおよびダウンロード環境のインストール




Vagrantのインストールは非常に簡単です。 必要なのは、サイトからインストーラーをダウンロードして実行することだけです。 さらに、Vagrantでは、VirtualBoxまたはVMware仮想マシンのいずれかをインストールする必要があります。



Vagrantのインストール後、作業環境の作成に進みます。 その構造の基礎は、Vagrantの「箱」(箱)です。 「ボックス」Vagrantは、拡張子ボックスを持つファイルです。 このファイルは、gzipで圧縮されたtarアーカイブにすぎません。 仮想マシンのアーカイブとその正しい起動に必要なファイルは、アーカイブ内に保存されます。



Vagrantの公式Webサイトには、さまざまなバージョンのLinuxとインストールされたソフトウェアを備えた既製の「ボックス」が多数あります。 それらのリストはVagrantCloudで見ることができます。

www.vagrantbox.esさらに構築済みの環境を利用できます。



私たちの目的のためには、Ubuntuの標準バージョン-hashicorp / precise64が事前にインストールされており、公式リポジトリからChefとPuppetが事前にインストールされています(これは必要ありません)。 環境をセットアップする前に、環境の構成ファイルが保存されるディレクトリを作成します。 彼女のVagrantと呼びましょう。 このディレクトリに移動して、コンソールで実行します。



\Vagrant> vagrant init hashicorp/precise64
      
      







その後、Vagrantfileファイルがディレクトリに表示され、この環境の構成の説明が含まれます。 たとえば、config.vm.box =“ hashicorp / precise64”という行は、環境の名前を定義します。 これで、環境の起動を開始する準備がすべて整いました。 実行する



 \Vagrant> vagrant up
      
      







対応する「ボックス」の読み込みに関するメッセージが表示されます。 これはこの環境の最初の起動であるため、開始する前にリポジトリからローカルディスクにダウンロードする必要があります。 上記の例では、initコマンドの引数-環境名-はVagrant Webサイトの引数と一致することに注意してください。 この一致はオプションです。 そのため、この環境(ChefとPuppetを含まないバージョン)を構成できます。したがって、



 \Vagrant> vagrant init precise64 http://cloud-images.ubuntu.com/vagrant/precise/current/... .box
      
      







簡単にわかるように、initの2番目の引数はボックスのURLです。 また、上記のhashicorp / precise64、precise64などの環境名は、インストールされた環境間で便利な方向付けを行うために実際に必要であり、Vagrant自体は一意の識別子を使用して必要な環境を起動することに注意してください(値はaction_set_nameファイルに保存されます)。 作業環境ファイルはデフォルトで〜/ .vagrant.d}ディレクトリに保存されます。Windowsの「〜」はC:\ Users \ your_login \ディレクトリです。



vagrant upを実行し、環境がロードされるのを待った後、使用できる状態になります。ステータスを確認することで確認できます。



 \Vagrant> vagrant status
      
      







環境を終了するには、次のコマンドを使用します



 \Vagrant> vagrant halt
      
      







インストールされたすべてのVagrnat環境は、vagrantボックスリストを使用して、またはVirtualBox(VMware)で直接表示できます。









Vagrant仮想マシンがインストールされたVirtualbox。



このセクションを終了するために、vagrant box addコマンドを使用してVagrant環境を追加できることに注意してください。 公式ドキュメントページで、それと他のVagrantコンソールコマンドの詳細を読むことができます。



Vagrant環境への接続




環境が起動すると(vagrant up)、insecure_private_keyキーが.vagrant.dフォルダーに自動的に作成され、sshプロトコルを使用して環境に接続します。 Windowsでsshプロトコルを使用するには、 PuTTYおよびPuTTYgenプログラムが必要です(キーをPuTTYが理解できる形式に変換するため)。 PuTTYgenを起動し、insecure_private_keyを開くと、キーが正常にインポートされたというメッセージが表示されます。 これで、秘密鍵としてppk形式で保存できます。



便宜上、この環境のVagrantfileファイルとともにキーをフォルダーに保存できます。 次に、使用するキーをPuTTYに通知し、ポート2222を介して接続します(ポート番号はvagrant upの実行時に表示されます)。 デフォルトでは、ログイン名はvagrantです。



接続に成功すると、Vagrant環境のコンソールに表示され、そこからPythonライブラリまたはシステムアプリケーションをインストールできます。









PuTTYgenにキーを保存します。















PuTTY接続設定を構成します。



作業環境がダウンロードされて開始されたので、PythonとDjango自体をインストールする準備がすべて整いました。 仮想環境を使用してPythonで作業することをお勧めします(Pythonだけでなく)。 この場合、システムにすでにインストールされているインタープリターおよび他のソフトウェアのバージョンとの競合のリスクが最小限に抑えられ、異なるバージョンのPythonインタープリター、Django、または他のパッケージと同時に動作することが可能になります。



仮想環境をインストールするには、Vagrantコンソールを実行します。



 vagrant@vagrant sudo apt-get install python-virtualenv
      
      







インストールが完了したら、新しい仮想環境を作成します



 vagrant@vagrant virtualenv venv
      
      







それを活性化する



 vagrant@vagrant source /home/vagrant/venv/bin/activate
      
      





次は、Djangoをインストールします。



 (venv)vagrant@vagrant pip install django
      
      







インストールするパッケージのバージョンを指定できます。



 (venv)vagrant@vagrant pip install django==1.4
      
      







Djangoはインストールされますが、1つの小さなタスクが残ります。Vagrant環境にインストールされたPythonインタープリターと連携するようにPyCharmを教えることです。 これを行う方法については、次のセクションで説明します。



PyCharmを構成する




PyCharmを起動して、新しいDjangoプロジェクトを作成します。 デフォルトでは、〜/ PycharmProjects /フォルダーに作成されます。 テストプロジェクトにします。 次に、Vagrant作業環境のホームディレクトリで、PycharmProjectsフォルダーを作成します(名前の一致はランダムであり、便宜上選択されています)。



プロジェクト設定メニューに移動します:ファイル->設定-> Project Interpeter。 ここで、新しいインタープリターを追加します:アドレス(127.0.0.1)、ポート番号(2222)、ユーザー名(vagrant)、インタープリターへのパス/ home / vagrant / venv / bin / pythonを指定し、最後に、キーでファイルへのパスを指定しますssh。



次に、ローカルフォルダーとVagrant環境内のプロジェクトおよび同様のフォルダーの同期を構成する必要があります。 Vagrantファイルを編集用に開き、config.vm.synced_folderを含む行のコメントを解除して、config.vm.synced_folder C:/ Users / adolgikh / PycharmProjects、/ home / vagrant / PycharmProjectsに修正します。 これで、ローカルファイルは、インタープリターがインストールされている環境と同期されます。 Vagrantを再起動



 $ vagrant reload
      
      







プロジェクトTestのフォルダーが、リモート作業環境のプロジェクトのフォルダーに正常に追加されたことがわかります。



プロジェクトの作業中に行われた現在の変更をすぐにリモート環境に送信するには、Pycharmプロジェクトで追加の設定を行う必要があります。 「実行」->「構成の編集」メニューに移動し、スクリーンショットに示すようにパスマッピングを調整します。

Pycharmでsshコンソールを実行する機能について言及します。 [ツール]メニューから起動され、sshを介してリモートインタープリターの設定で指定された環境に接続されます。 したがって、Pycharmで正しく構成されたプロジェクトでPuTTYを使用する必要はありません。









Pycharmでのパスマッピングの構成



おわりに


Vagrantは、WindowsでのPython開発の利便性を大幅に向上させることができるというだけでなく、間違いなく優れています。 Vagrantをインストールすることにより、完全に機能する作業環境を作成、構成、および維持できます。 さらに、構成が異なる複数のVagrant環境が同時に機能する構成を作成できます。

したがって、実稼働で使用される意図された作業環境をかなり正確にシミュレートすることが可能になります。 一言で言えば、Vagrantは開発者の手に渡るもう1つの価値のあるツールであり、将来的にはVagrantを使用した作業の他の側面を強調していきます。



All Articles