怎样在 Debian 10 上安装 Streamlit

介绍

Streamlit 是一个开源 Python 库,旨在为机器学习和数据科学创建自定义 Web 应用程序。 它是设计、构建和部署数据应用程序的最快方法之一。 本文解释了如何在 Debian 10 服务器上运行基于 Streamlit 的 Web 应用程序。

1. 安装先决条件

部署一个 Vultr Debian 10 VPS 实例。 登录为 . 更新 Debian 服务器。

更新 Python

默认的 Debian 存储库仅包含 Python 3.7,因此我们将使用 Python 源代码安装最新的 Python 3。

安装编译 Python 源代码所需的依赖项。

# apt-get install wget build-essential libreadline-gplv2-dev libncursesw5-dev libssl-dev libsqlite3-dev tk-dev libgdbm-dev libc6-dev libbz2-dev libffi-dev zlib1g-dev liblzma-dev -y

下载最新的 Python3 源代码。

# wget https://www.python.org/ftp/python/3.9.6/Python-3.9.6.tgz

提取下载的 python 源代码存档。

# tar xzf Python-3.9.6.tgz

编译python源代码。

# cd Python-3.9.6 && ./configure --enable-optimizations

安装 Python 3.9.6。

# make altinstall

将 Python 3.9.6 设置为默认版本。

# update-alternatives --install /usr/bin/python python /usr/local/bin/python3.9 1

更新点。

# /usr/local/bin/python3.9 -m pip install --upgrade pip

将 Python 3.9.6 中的 pip 设置为默认版本。

# update-alternatives --install /usr/bin/pip pip /usr/local/bin/pip3.9 1

检查 Python 和 pip 的当前版本。

# python --version && pip --version

改成 目录。

# cd

2. 安装流光

使用 Python pip 安装 Streamlit。

# pip install streamlit

3.安装tmux

当您在普通 SSH 会话上运行 Streamlit 时,一旦您退出 SSH 会话,Streamlit 进程就会关闭。 要在离开 SSH 会话时运行 Streamlit,请使用 多路复用器,终端多路复用器。 使用终端多路复用器将允许您在后台运行 Streamlit 进程。

要安装 tmux,请运行:

# apt install tmux -y

4. 在 Debian 10 上运行 Streamlit

选项 1:使用默认端口

Streamlit 默认运行在 8501 端口,因此您需要在防火墙上允许 8501 端口。

# ufw allow 8501

要创建 tmux 会话,请运行:

# tmux new -s StreamlitSession

你可以改变 StreamlitSession 到您喜欢的任何会话名称。

一旦你在终端多路复用器上,你现在可以运行你的主要 python 脚本。 确保你的 python 脚本在 /根/ 目录,然后运行:

# streamlit run main.py

改变 main.py 到您的python脚本文件名。

当您第一次运行 Streamlit 时,系统会提示您输入您的电子邮件地址。 如果您想接收 Streamlit 更新,请输入您的电子邮件地址,或者您可以按 ENTER 跳过它。

要查看您部署的 Web 应用程序,请访问 http://server_ipaddress:8501

选项 2:在 HTTP 端口上运行 Streamlit

要在 HTTP 端口 (80) 上部署您的 Web 应用程序,请首先在防火墙上允许 http 端口 (80)。 跑步:

# ufw allow 80

然后运行:

# streamlit run main.py --server.port 80

改变 main.py 到您的python脚本文件名。

要查看您部署的 Web 应用程序,请访问 http://server_ipaddress

停止 Streamlit 和 tmux

要停止 Streamlit 执行,请按 CTRL + C 要从 tmux 分离,请按 CTRL + B 然后按 D

要重新连接到 tmux,请运行:

# tmux attach -t StreamlitSession

改变 StreamlitSession 到您之前输入的会话名称。

要结束 tmux 会话,请按 CTRL + B 然后按 X 然后按 Y。

或者,您可以终止 tmux 进程。

要查找 tmux 的进程 ID,请运行:

# ps -ef |grep tmux

输出应如下所示:

root      2575     1  0 20:13 ?        00:00:00 tmux new -s StreamlitSession
root      3171  5047  0 20:15 pts/1    00:00:00 grep tmux

2575 是个 PID 或进程 ID 本例中的 tmux 进程。

杀死 tmux 进程。

# kill <your process ID>

您还可以终止 Streamlit 进程。

要查找 Streamlit 的进程 ID,请运行:

# ps -ef |grep streamlit

输出应如下所示:

root      3431  2576 16 20:16 pts/0    00:00:01 /usr/local/bin/python3.9 /usr/local/bin/streamlit run main.py --server.port 80
root      3473  5047  0 20:16 pts/1    00:00:00 grep streamlit

3431 是个 PID 或进程 ID 本例中的 Streamlit 过程。

终止 Streamlit 进程:

# kill <your process ID>

故障排除

如果您遇到一些问题或想了解更多信息,请访问 精简的文档.

注:本教程在Vultr VPS上测试通过,如需部署请前往Vultr.com