流浪端口未暴露
Vagrant port not exposed
我正在使用 ubuntu/xenial64
vagrant box 并按照 here 指示的说明设置 readthedocs
服务器。
我还在 Vagrantfile
:
中硬编码静态私有网络 IP
config.vm.network "private_network", ip: "192.168.33.10"
但是,启动 Django
服务器后:
(rtd) vagrant@ubuntu-xenial:~/rtd/checkouts/readthedocs.org$ python manage.py runserver
[14/Mar/2018 05:22:40] root:120[1581]: INFO Generating grammar tables from /usr/lib/python2.7/lib2to3/Grammar.txt
[14/Mar/2018 05:22:40] root:120[1581]: INFO Generating grammar tables from /usr/lib/python2.7/lib2to3/PatternGrammar.txt
[14/Mar/2018 05:22:41] root:120[1585]: INFO Generating grammar tables from /usr/lib/python2.7/lib2to3/Grammar.txt
[14/Mar/2018 05:22:41] root:120[1585]: INFO Generating grammar tables from /usr/lib/python2.7/lib2to3/PatternGrammar.txt
Performing system checks...
System check identified some issues:
WARNINGS:
?: (1_8.W001) The standalone TEMPLATE_* settings were deprecated in Django 1.8 and the TEMPLATES dictionary takes precedence. You must put the values of the following settings into your default TEMPLATES dict: TEMPLATE_DEBUG.
?: (guardian.W001) Guardian authentication backend is not hooked. You can add this in settings as eg: `AUTHENTICATION_BACKENDS = ('django.contrib.auth.backends.ModelBackend', 'guardian.backends.ObjectPermissionBackend')`.
System check identified 2 issues (1 silenced).
March 14, 2018 - 05:22:42
Django version 1.9.12, using settings 'readthedocs.settings.dev'
Starting development server at http://127.0.0.1:8000/
Quit the server with CONTROL-C.
我无法访问 http://192.168.33.10:8000/
在 vagrant
机器内:
vagrant@ubuntu-xenial:~$ netstat -ta
Active Internet connections (servers and established)
Proto Recv-Q Send-Q Local Address Foreign Address State
tcp 0 0 *:ssh *:* LISTEN
tcp 0 0 localhost:8000 *:* LISTEN
tcp 0 0 localhost:6379 *:* LISTEN
使用
$ vagrant --version
Vagrant 2.0.2
和 Virtualbox 5.2.8 r121009 (Qt5.6.1)
在 Ubuntu 16.04.03
主机上。
文末有详细说明
For builds to properly kick off as expected, it is necessary the port
you’re serving on (i.e. runserver 0.0.0.0:8080
) match the port defined
in PRODUCTION_DOMAIN
. You can utilize local_settings.py
to modify
this. (By default, it’s localhost:8000
)
您可以选择以下两者之一:
- 使用
python manage.py runserver 0.0.0.0:8080
启动服务器
- 更新
local_settings.py
并将 localhost:8000
更改为 0.0.0.0:8080
您还可以将 0.0.0.0
替换为您为 VM 配置的 IP
我正在使用 ubuntu/xenial64
vagrant box 并按照 here 指示的说明设置 readthedocs
服务器。
我还在 Vagrantfile
:
config.vm.network "private_network", ip: "192.168.33.10"
但是,启动 Django
服务器后:
(rtd) vagrant@ubuntu-xenial:~/rtd/checkouts/readthedocs.org$ python manage.py runserver
[14/Mar/2018 05:22:40] root:120[1581]: INFO Generating grammar tables from /usr/lib/python2.7/lib2to3/Grammar.txt
[14/Mar/2018 05:22:40] root:120[1581]: INFO Generating grammar tables from /usr/lib/python2.7/lib2to3/PatternGrammar.txt
[14/Mar/2018 05:22:41] root:120[1585]: INFO Generating grammar tables from /usr/lib/python2.7/lib2to3/Grammar.txt
[14/Mar/2018 05:22:41] root:120[1585]: INFO Generating grammar tables from /usr/lib/python2.7/lib2to3/PatternGrammar.txt
Performing system checks...
System check identified some issues:
WARNINGS:
?: (1_8.W001) The standalone TEMPLATE_* settings were deprecated in Django 1.8 and the TEMPLATES dictionary takes precedence. You must put the values of the following settings into your default TEMPLATES dict: TEMPLATE_DEBUG.
?: (guardian.W001) Guardian authentication backend is not hooked. You can add this in settings as eg: `AUTHENTICATION_BACKENDS = ('django.contrib.auth.backends.ModelBackend', 'guardian.backends.ObjectPermissionBackend')`.
System check identified 2 issues (1 silenced).
March 14, 2018 - 05:22:42
Django version 1.9.12, using settings 'readthedocs.settings.dev'
Starting development server at http://127.0.0.1:8000/
Quit the server with CONTROL-C.
我无法访问 http://192.168.33.10:8000/
在 vagrant
机器内:
vagrant@ubuntu-xenial:~$ netstat -ta
Active Internet connections (servers and established)
Proto Recv-Q Send-Q Local Address Foreign Address State
tcp 0 0 *:ssh *:* LISTEN
tcp 0 0 localhost:8000 *:* LISTEN
tcp 0 0 localhost:6379 *:* LISTEN
使用
$ vagrant --version
Vagrant 2.0.2
和 Virtualbox 5.2.8 r121009 (Qt5.6.1)
在 Ubuntu 16.04.03
主机上。
文末有详细说明
For builds to properly kick off as expected, it is necessary the port you’re serving on (i.e.
runserver 0.0.0.0:8080
) match the port defined inPRODUCTION_DOMAIN
. You can utilizelocal_settings.py
to modify this. (By default, it’slocalhost:8000
)
您可以选择以下两者之一:
- 使用
python manage.py runserver 0.0.0.0:8080
启动服务器
- 更新
local_settings.py
并将localhost:8000
更改为0.0.0.0:8080
您还可以将 0.0.0.0
替换为您为 VM 配置的 IP