我可以推薦this repository。
您可以修改它以支持Django項目。
Vagrantfile
更新:
config.vm.define "web1", primary: true do |web1_config|
web1_config.ssh.forward_agent = true
# Create a private network, which allows host-only access to the machine
web1_config.vm.network "private_network", ip: "192.168.11.10"
web1_config.vm.hostname = "web1.#{domain}"
web1_config.vm.provision "shell", path: "provisioners/shell/python.setup.sh"
web1_config.vm.provision "shell", path: "provisioners/shell/application.setup.sh"
end
然後添加一個provisioners/shell/application.setup.sh
文件,內容如下:
#!/bin/bash
local_user=vagrant
if [ ! -n "$(grep "^bitbucket.org " /home/$local_user/.ssh/known_hosts)" ]; then
ssh-keyscan bitbucket.org >> ~/.ssh/known_hosts 2>/dev/null;
fi
if [[ ! -d "/home/$local_user/app" ]]; then
git clone [email protected]:czerasz/sample-django-app.git /home/$local_user/app
chown -R $local_user:$local_user /home/$local_user/app
su - $local_user -c "source /usr/local/bin/virtualenvwrapper.sh && mkvirtualenv sample-django-app-env && workon sample-django-app-env && pip install -r /home/$local_user/app/requirements.txt"
fi
更改倉庫地址([email protected]:czerasz/sample-django-app.git
),並同時確保您在根有requirements.txt
你的git倉庫。運行vagrant up
。
放浪將啓動兩臺機器:
web1
與Django項目
db1
與PoestgreSQL數據庫
如果您仍然有問題,以下內容添加到您的Vagrantfile
:
web1_config.ssh.private_key_path = [ '~/.vagrant.d/insecure_private_key', '~/.ssh/bitbucket' ]
並(在您運行vagrant
機器)執行你的主機上運行此命令:
ssh-add ~/.ssh/bitbucket
的~/.ssh/bitbucket
是您使用的到位桶SSH私鑰。它可以是~/.ssh/id_rsa
或不同的東西,具體取決於你如何配置它。
有關StackOverflow的問題應該是明確的答覆。有很多方法可以設置Django環境,其中大部分可以歸結爲個人對給定應用程序的個性化需求的偏好。如果你想得到一些想法,谷歌是這個地方。 –
@Chris Pratt我很欣賞你的意見。 – avatar
這個問題已經有好幾次了。請參閱http://stackoverflow.com/questions/1626326/how-to-manage-local-vs-production-settings-in-django和http://stackoverflow.com/questions/88259/how-do-you-configure -django-for-simple-development-and-deployment –