2017-06-09 32 views
3

我想在vagrant using ansible中設置一個Django項目。我用下面的代碼安裝pip packages使用ansible而不是pip2來安裝pip3包

- name: Setup Virtualenv 
    pip: virtualenv={{ virtualenv_path }} virtualenv_python=python3 requirements={{ virtualenv_path }}/requirements.txt 

我需要使用python3的Django項目,即使我已經明確提到使用python3,這是installing the pip packages via pip2。我已經確保在虛擬機上安裝python3。

請幫我通過pip3安裝軟件包。

+0

是在VM上安裝的python3嗎? –

+0

@FrédéricHenri是的,它安裝在虛擬機上。 – kamayani

+0

@FrédéricHenri請提出建議。 – kamayani

回答

3

嘗試使用executable選項。從pip模塊doc摘錄:

executable(在1.3中加入)

顯式可執行文件或路徑名執行以用於運行PIP用於Python的特定版本安裝在系統中。例如pip-3.3,如果在系統中安裝了Python 2.7和3.3,並且您想爲Python 3.3安裝運行pip。它不能與'virtualenv'參數一起指定(在2.1中添加)。默認情況下,它將採用合適的版本,以供例如可用的Python解釋器使用。 python 3上的pip3以及python 2上的pip2或pip。

+1

我將上面的行更改爲:'pip: executable = pip3 virtualenv = {{virtualenv_path}} requirements = {{virtualenv_path}}/requirements.txt' Error說:參數是互斥的:['executable','virtualenv '] – kamayani

+0

當我刪除virtualenv參數時,它會引發一些其他錯誤。 – kamayani

+0

我能解決它。非常感謝。 – kamayani