当你需要将虚拟环境中的 Flask 应用迁移到没有外网访问的服务器上时,你可以按照以下步骤进行操作:

  1. 创建虚拟环境(如果尚未创建):
  • 在你的本地开发环境中,使用 virtualenvvenv 创建一个虚拟环境。这将帮助你隔离项目的依赖和环境。
  1. 部署 Flask 应用到服务器
  • 首先,确保你的服务器已经安装了 Docker。如果没有,可以使用以下命令安装 Docker:
sudo apt-get install 
  • 接下来,登录到你的远程服务器终端,并将之前构建好的 Docker 镜像拉取到服务器上。你可以使用以下命令:
sudo docker pull testflask
  • (这里的 testflask 是你之前构建的 Docker 镜像名称)
  • 运行 Docker 容器:
sudo docker run -d -p 80:80 testflask
  1. 配置服务器的防火墙规则
  • 如果你的服务器有防火墙,确保允许外部访问端口 80(或你选择的其他端口)。
  1. 测试应用
  • 在浏览器中输入服务器的 IP 地址或域名,加上端口号(例如 http://your_server_ip:80),查看是否可以访问你的 Flask 应用。

这样,你的 Flask 应用就成功部署到了没有外网访问的服务器上。如果你的应用需要更复杂的配置,例如数据库连接、SSL 证书等,你可以根据实际需求进行相应的设置。¹²³

请注意,如果你的服务器无法直接访问外网,你可以考虑以下两种方法来安装 Python 库:

  1. 使用代理服务器
  • 如果你的跳板机可以访问外网,你可以在跳板机上设置代理服务器,然后让目标服务器通过跳板机的代理访问外网。
  • 设置代理服务器:
$ export https_proxy=http://:<port>
$ export http_proxy=http://:<port>
$ pip install <package>
  1. 离线下载 pip 包进行安装
  • 在一台可以连接外网的服务器上下载所需的 Python 包,然后将其拷贝到内网服务器上进行安装。⁴

希望这些步骤对你有帮助!如果你还有其他问题,欢迎继续提问。🙂

源: 与必应的对话, 2024/4/8

(1) Flask + Docker 无脑部署新手教程 - 知乎 - 知乎专栏. https://zhuanlan.zhihu.com/p/78432719.

(2) flask的web部署云服务器——史上最详细小白教程没有之一_flaskweb部署到云服务器上-CSDN博客. https://blog.csdn.net/qq_40831778/article/details/104639076.

(3) 【保姆级】Python项目(Flask网页)部署到Docker的完整过程 - 知乎. https://zhuanlan.zhihu.com/p/390091149.

(4) 如何在没有网的条件下安装python的库? - 知乎. https://www.zhihu.com/question/460114904.

(5) 在服务器部署一个可被外网访问的flask示例 - CSDN博客. https://blog.csdn.net/li_l_il/article/details/114867400.

(6) undefined. https://pypi.tuna.tsinghua.edu.cn/simple.

(7) undefined. http://.