前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >【保姆级教程】白嫖老外的云服务器

【保姆级教程】白嫖老外的云服务器

作者头像
统计学家
发布2021-12-27 16:10:52
2.4K0
发布2021-12-27 16:10:52
举报

最近在玩streamlit,不但实现一些好玩的应用,还可以直接部署,比如我之前开发的决策树挑西瓜就是使用了streamlit,入门可以参考我的这篇教程

前文我介绍了用streamlit+bar_chart_race实现条形竞赛图的方法,今天咱们就讲一下如何部署,如何白嫖heroku的服务器。

https://bar-chart-race-app.herokuapp.com/

Heroku

Heroku平台的灵活性极高且支持多种编程语言,若想把程序部署到Heroku上,开发者要使用Git把程序推送到Heroku的Git服务器上。在服务器上,git push命令会自动触发安装、配置和部署程序。

大家可以先在heroku注册一个用户,登录之后完全可以在dashboard部署应用:https://heroku.com

安装Heroku CLI

https://devcenter.heroku.com/articles/heroku-cli

代码语言:javascript
复制
# Windows
https://devcenter.heroku.com/articles/heroku-cli
# mac
brew tap heroku/brew && brew install heroku
# Ubuntu / Debian apt-get
curl https://cli-assets.heroku.com/install-ubuntu.sh | sh

配置文件

把项目完整地push到github

导出项目当前开发环境的包信息

代码语言:javascript
复制
pip freeze > requirements.txt

requirements.txt内容如下

代码语言:javascript
复制
base58==2.1.1
graphviz==0.19
matplotlib==3.5.0
matplotlib-inline==0.1.3
numpy==1.21.4
pandas==1.3.4
plotly==5.4.0
streamlit==1.2.0

项目下新建setup.sh内容如下:

代码语言:javascript
复制
mkdir -p ~/.streamlit/
echo "\
[server]\n\
headless = true\n\
port = $PORT\n\
enableCORS = false\n\
\n\
" > ~/.streamlit/config.toml

项目下新建Procfile(注意,该文件无任何后缀)内容如下:

代码语言:javascript
复制
web: sh setup.sh && streamlit run app.py

创建app

登录heroku

代码语言:javascript
复制
heroku login

新建APP

代码语言:javascript
复制
heroku create bar-chart-race-website

以上两部也可直接在dashboard直接操作:

https://dashboard.heroku.com/apps

新建app

链接到自己的github

选择对应的项目 - connect

项目需要安装ffmpeg,在settings中添加buildpacks,注意顺序,ffmpeg在前,python在后

https://dashboard.heroku.com/apps/bar-chart-race-app/settings

返回到deploy页面继续部署

成功 https://bar-chart-race-app.herokuapp.com/

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2021-12-26,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 机器学习与统计学 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • Heroku
  • 配置文件
  • 创建app
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档