使用场景
可直接看文章末尾
我在同一个节点部署多个python服务时,通过streamlit run app.py启动服务,会使用默认的port:8501;
但是多个服务,都是同样的ip,同样的port就会冲突;
所以需要不同的服务,需要设置不同的port;
而网上给的方法,都是根据官方文档来的,对这个场景并没什么用。
解决方案
方案一
思路:
1.端口号port既然是默认值8501,那找到这个数值,将其更改即可;
2.不同的服务,来自于不同的conda虚拟环境,在不同的虚拟环境更改port即可。
操作如下:
1.不同的项目创建不同的conda虚拟环境,在需要更改port的项目对应的虚拟环境下,找到config.py文件,路径:D:\Apps\miniconda3\envs\pytorch_gpu\Lib\site-packages\streamlit(D:\Apps\miniconda3是安装miniconda的路径);
2.打开config.py文件,查找8501,将其改为想要设置的端口号即可;
3.保存改文件。
方案二
既然配置文件config.py里有相关的配置参数,也有相应的参数管理,在命令行也会有相应的设置。
通过启动命令 streamlit run app.py时,添加配置参数即可,下面9001为目标端口号,
比如 streamlit run app.py --server.port 9001