如何将Django Development Server与VM(Vagrant和VirtualBox)一起使用



我可以在Django项目主机上看到"It Works!"页面!

当我vagrant ssh(进入VM),然后在/myprojectdir python manage.py runserver或中

python manage.py runserver 0.0.0.0:8000

python manage.py runserver 10.0.2.2 (guest IP):8000

python manage.py runserver 10.0.2.2 (host IP):8000

没有问题(0)被静音。。。日期

Django 1.8.7版…

正在启动位于的开发服务器。。。http://X.X.X.X:XXXX

好的,太好了-我会查看地址以查看页面,但

我没有看到"它有效!"页相反,我看到页面左上角的文本

SSH-2.0-打开SSH-6.6.1

绑定服务器或使用访客自己的IP地址都不起作用。

注意:我使用的虚拟机是一个CentOS7盒子,但我在流浪者教程标准盒子Precise32上尝试过,它的行为与我上面描述的相同。

思考的食物:

  • Django方面的事情再次发挥作用;我可以在主机中对python manage.py runserver使用相同的文件(工作),但在VM上时不能使用(不工作)。

  • 我使用的是NAT连接,当我尝试使用桥接连接时,流浪者会请求一个我不知道的密码(无法通过桥接访问)。

  • 我已将:config.vm.network :forwarded_port, guest: 22, host: 8000, id: 'ssh'包含在我的"流浪者"文件中。否则流浪者将默认到端口2222。

我必须在Vagrantfile中更改什么才能获得Django开发服务器-"它有效!"-页面并在我的虚拟机上运行?

当前流浪者文件

    Vagrant.configure(2) do |config|
  config.vm.box = "bento/centos-7.1"
  config.vm.box_check_update = false
  config.vm.network :forwarded_port, guest: 22, host: 8000, id: 'ssh'
  config.vm.synced_folder "myApp", "/myApp"
  config.vm.provider "virtualbox" do |vb|
    vb.memory = "1024"
  end
  config.vm.provision "shell", path: "vagrant-setup.sh"
end

config.vm.network :forwarded_port, guest: 22, host: 8000, id: 'ssh'将客户机(VM)上的端口22转发到主机上的端口8000。

因为你想要8000端口,你应该用替换它

config.vm.network :forwarded_port, guest: 8000, host: 8000

最新更新