在本地服务器(具有外部访问)上安全部署Dash应用程序 [英] Deploying Dash app on a 'local' server (with external access) securely
本文介绍了在本地服务器(具有外部访问)上安全部署Dash应用程序的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我是一个项目的一部分,我想为该项目部署一个Dash web应用程序,托管在一个项目合作伙伴的服务器上。有没有办法通过URL与项目的其他成员安全地(我猜使用Basic Dashauth
)共享此Dash应用程序?
我知道这可以通过Heroku部署,但由于可能会担心通过此第三方服务传输数据,更理想的设置是通过"本地"(到项目)服务器托管应用程序。
有效
- Dash应用程序通过
git
构建和部署在一台全天候运行的‘本地’服务器上 - 并且,项目合作伙伴可以通过提供的URL访问该应用程序
我确信这上面有一些东西,但我似乎找不到最适合我们需要的部署方法。
推荐答案
如果您在0.0.0.0:8050上运行DASH应用,并且您的合作伙伴在其Web浏览器上转到您计算机的IP_Address:8050,则他们可以从同一WiFi网络访问该应用。
app = dash.Dash(__name__, external_stylesheets=external_stylesheets)
if __name__ == '__main__':
app.run_server(host="0.0.0.0", port="8050")
因此,如果您的本地IP地址是192.168.7.98,您的同事可以通过从同一wifi网络转到192.168.7.98:8050来访问正在运行的DASH应用程序。这也是测试移动布局的好方法。在0.0.0.0上启动DASH,并使用与上述相同的方法从您的手机访问它。
以下是run_server方法中可用的所有选项:
def run_server(
self,
host=os.getenv("HOST", "127.0.0.1"),
port=os.getenv("PORT", "8050"),
proxy=os.getenv("DASH_PROXY", None),
debug=False,
dev_tools_ui=None,
dev_tools_props_check=None,
dev_tools_serve_dev_bundles=None,
dev_tools_hot_reload=None,
dev_tools_hot_reload_interval=None,
dev_tools_hot_reload_watch_interval=None,
dev_tools_hot_reload_max_retry=None,
dev_tools_silence_routes_logging=None,
dev_tools_prune_errors=None,
**flask_run_options):
这篇关于在本地服务器(具有外部访问)上安全部署Dash应用程序的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文