我几乎没有什么服务,比如redis服务器,centifuge服务器与Django一起运行。我想使用一个命令启动服务和服务器。
类似于:
python setup.py run默认情况下,这将运行来自settings.py的127.0.0.1及以下变量上的所有服务。
#Sample settings.py
#Django rq configs
RQ_SHOW_ADMIN_LINK = True
RQ_QUEUES = {
'default': {
'HOST': 'localhost',
'PORT': 6379,
'DB': 0,
'DEFAULT_TIMEOUT': 360,
},
}
# centrifuge configuration
CENTRIFUGE_WEBSOCKET = 'ws://127.0.0.1:8080/connection/websocket'
CENTRIFUGE_ADDRESS = 'http://127.0.0.1:8080'我想跑
python setup.py run 172.19.78.179在这里,服务将运行在172.19.78.179上,我将把设置更改为这个ip。
# centrifuge configuration
CENTRIFUGE_WEBSOCKET = 'ws://172.19.78.179:8080/connection/websocket'
CENTRIFUGE_ADDRESS = 'http://172.19.78.179:8080'我不想把它设置在实时设置或通过管理界面。我该如何解决这个问题?
发布于 2015-04-28 08:25:50
如果ip是动态的,可以尝试使用os.environ,如下所示:
import os
IP = os.environ['IP']
...所以你可以像这样运行:IP=172.19.78.179 python setup.py run
或者,如果您愿意,可以使用单独的settings文件并使用--settings标志调用它:
django-admin runserver --settings=mysite.settings您可以阅读更多关于django环境设置这里的信息。
希望这能有所帮助。
https://stackoverflow.com/questions/29912748
复制相似问题