有一个用于机器学习的python应用程序,开发者已经在docker中运行了。特别是Azure容器实例。他们正在使用micromamba:0.15.3,在dockerfile中,他们还为web服务器安装了nginx。最后的Docker文件将运行:CMD ["./start.sh"]
以及里面的脚本:
service nginx start
streamlit run app.py --theme.base "dark" --server.address localhost --server.port 5000 --server.enableCORS=false我还看到他们在本地使用anaconda来运行web应用程序。这也运行流光。
现在,我将删除dockerfile中的nginx部分,因为它将转移到k8s,并且将使用nginx入口控制器+ ingres作为vhost,这将是运行python服务的pointin。
我应该用哪个码头形象来做这个呢?使用conda、miniconda或python官方图像有什么区别?我不只是需要python图像,您可以在其中添加流光,比如这里。
发布于 2022-04-07 18:58:06
您是对的,您可以创建一个从官方Python派生的简单Dockerized,创建一个虚拟环境,并在构建阶段将一个requirements.txt文件安装到这个环境中,用于streamlit和其他依赖项。Anaconda和Miniconda刚刚完成了python虚拟环境的管理。如果存在environment.yml而不是requirements.txt,则可以使用conda create -f environment.yml在Docker中创建环境。
https://stackoverflow.com/questions/71767475
复制相似问题