0
作爲一個絕對廚師初學者我嘗試設置一個vm與最新的python和django。我使用「ubuntu/trusty64」框,並驚訝它的python3版本沒有安裝pip和pyvenv。 所以我不得不從源代碼安裝最新的python版本3.4.3,這似乎工作正常。但是,試圖點子安裝與廚師Django的時候,我總是得到同樣的錯誤說:安裝django使用vagrant與廚師獨奏供應商
廚師::例外::套餐:沒有候選版本Django的
我python3食譜:
package "python"
execute "update system" do
command "sudo apt-get update -y"
not_if { File.exists?('/tmp/Python-3.4.3')}
end
execute "get dependencies" do
command "sudo apt-get install -y build-essential libbz2-dev libncurses5-dev libreadline6-dev libsqlite3-dev libgdbm-dev liblzma-dev tk8.6-dev libssl-dev python3-setuptools"
not_if { File.exists?('/tmp/Python-3.4.3')}
end
%w[ /opt/python /djenv ].each do |path|
directory path do
owner 'vagrant'
group 'vagrant'
mode '0755'
end
end
bash 'install-python3.4.3' do
user 'vagrant'
cwd '/tmp'
code <<-EOH
set -e
wget https://www.python.org/ftp/python/3.4.3/Python-3.4.3.tgz
tar -xvf Python-3.4.3.tgz
rm Python-3.4.3.tgz
cd Python-3.4.3
./configure --prefix=/opt/python
make
make install
EOH
not_if { File.exists?('/tmp/Python-3.4.3')}
end
execute "set pyvenv environment to /djenv" do
command "/opt/python/bin/pyvenv /djenv"
only_if{File.exists?('/opt/python/bin/python3')}
end
Django的食譜:
package 'django'
execute "activate env" do
command "source /djenv/bin/activate"
end
execute "install django and gunicorn" do
command "pip install gunicorn && pip install Django==1.8.3"
not_if {File.exists('/vagrant/../manage.py')}
end
execute "deactivate" do
command "deactivate"
end
我basicaly跟隨this教程,並嘗試將其翻譯成廚師。
我想,你不明白什麼'包裝'意味着廚師食譜。 https://docs.chef.io/resource_package.html –
好吧.....所以這將是一個easy_install_package,因爲沒有pip_package?或者只是將包裝聲明離開? 感謝您的提示。 – FitzPatrick