Я могу порекомендовать этот репозиторий .
Вы можете изменить его для поддержки проектов 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 git@bitbucket.org: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
Измените адрес хранилища (git@bitbucket.org:czerasz/sample-django-app.git
) и убедитесь, что в корневом каталоге есть requirements.txt
вашего Git хранилища.Запустите vagrant up
.
Vagrant запустит две машины:
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, который вы используете для bitbucket.Это может быть ~/.ssh/id_rsa
или что-то другое, в зависимости от того, как вы его настроили.