生产服务器上安装Python
2018-05-17
生产环境的服务器(以下简称内网服务器)由于安全限制,可能无法连接外网。这种情况下将无法直接使用pip命令安装python的包
一、更改pip源
- 默认pip是使用Python官方的源,但是由于国外官方源经常被墙,导致不可用,我们可以使用国内的python镜像源,从而解决Python安装不上库的烦恼
网上有很多可用的源,例如:
豆瓣:http://pypi.douban.com/simple/
清华:https://pypi.tuna.tsinghua.edu.cn/simple
注意后面要有/simple目录!!!
1、临时使用,只有安装pillow时使用指定源
1、临时使用,只有安装pillow时使用指定源
2、永久修改
Linux下,修改 ~/.pip/pip.conf (没有就创建一个), 修改 index-url至tuna,内容如下:
[global]
index-url = https://pypi.tuna.tsinghua.edu.cn/simple windows下,直接在user目录中创建一个pip目录,如:C:\Users\xx\pip,新建文件pip.ini,内容如下:
[global]
index-url = https://pypi.tuna.tsinghua.edu.cn/simple
二、pip的安装
官方文档: https://pip.pypa.io/en/stable/installing/
1、下载get-pip.py脚本执行
python get-pip.py
2、源码安装
- setuptools (https://pypi.org/project/setuptools/#description)
tar zxvf setuptools-0.6c11.tar.gz
cd setuptools-0.6c11
python setup.py install
- 下载pip
进入https://pypi.python.org/pypi/pip,下载第二项。
解压下载的文件(windows下只用解压工具解压如RAR,Linux下终端输入tar -xf pip-9.0.1.tar.gz,即tar -xf 文件名),进入解压后的文件夹中,调出命令行窗口或者终端,
- windows下输入
python setup.py install
- Linux下输入
sudo python setup.py install
- 安装成功后测试下,输入
pip -v
三、离线安装
1、通过代理服务器连接外网安装
内网服务器一般是通过跳板机连接的,若你的跳板机可以正常访问外网,则可以考虑在跳板机上架设代理服务器,然后目标服务器通过跳板机的代理访问外网。
$ export https_proxy=http://proxy.mydomain.com:<port>
$ export http_proxy=http://proxy.mydomain.com:<port>
$ pip install <package>
2、离线安装
若不具备使用代理服务器的情况,则先使用一台可以连接网络的服务器下载需要的packages,然后再拷贝到内网服务器上进行安装。
https://pip.pypa.io/en/stable/reference/pip_download/#pip-download
(1)下载需要离线安装的Packages
- 安装单个Package
$ pip download -d path SomePackage # equivalent to above
- 安装多个Packages
pip download -d path SomePackage -r requirements.txt
(2)将下载好的Packages拷贝至内网服务器
- 使用scp、sftp等方式将下载好的Packages拷贝至需要离线安装这些包的内网服务器。
(3) 安装Packages
假设内网服务器的目录 /tmp/transferred_packages 包含你上一步远程拷贝过来packages,在内网服务器上执行如下命令
- 安装单个Package的情况
pip install --no-index --find-links="/tmp/tranferred_packages" <package>
- 安装多个Packages
pip install --no-index --find-links="/tmp/tranferred_packages" -r requirements.txt
生产服务器上安装Python的更多相关文章
- linux服务器上安装python 3.6.3
一.下载源码包 地址https://www.python.org/ftp/python/3.6.3/Python-3.6.3.tar.xz 二.解压源码包 1.下载解压工具xz #yum -y ins ...
- 在CentOS上安装Python
首先我们需要在服务器上安装一个比较新的 Python,CentOS 5.8 默认装的 Python 是 2.4.3. [root@nowamagic ~]# python -V Python 我们需要 ...
- 远程编写+调试服务器上的Python程序
原帖参见(需自备梯子):https://webcache.googleusercontent.com/search?q=cache:1htdR2EXj5wJ:https://www.digitaloc ...
- ASP.Net WebAPI HttpDelete/PUT方法运行或发布到生产服务器上后出现405(Method Not Allowed)错误的解决办法
原文:ASP.Net WebAPI HttpDelete/PUT方法运行或发布到生产服务器上后出现405(Method Not Allowed)错误的解决办法 本文只是个人的理解和学习记录,如果觉得本 ...
- centos上安装python环境
1.安装python-pip 首先安装epel扩展源: yum -y install epel-release 更新完成之后,安装pip: yum -y install python- ...
- 如何在一台服务器上安装两个mysql或者更多
如何在一台服务器上安装两个mysql 1 前言 上篇写了在一台机器上源码编译安装一个mysql,那么如何在一台机器上源码编译安装两个mysql或者更多呢? 2 环境 mysql ...
- 我为什么很烦在DB服务器上安装杀毒软件
常见的数据库连接问题无外乎是在数据库服务器本地可以连接SQL Server,但通过其他服务器就不可以连接.但这次我却碰到了相反的情况,在服务器本地无法通过IP/实例名连接,但从其他服务器却可以.而且每 ...
- 阿里云服务器上安装mysql的心路历程(博友们进来看看哦)
在阿里云花了100买了一台云服务器,配置如下: CPU: 1核 内存: 512MB 数据盘: 0G 带宽: 1Mbps 阿里云服务器安装mysql搞得我想吐血,搞了一个多星期,现在才搞好,而且,还有许 ...
- 在Windows Server 2012服务器上安装可靠多播协议
为什么要安装可靠多播协议? 答:随着因特网的发展,出现了视频点播.电视会议.远程学习.计算机协同工作等新业务.传统的点到点通信方式,不仅浪费大量的网络带宽,而且效率很低.一种有效利用现有带宽的技术 ...
随机推荐
- Maven项目解决Remove '@override' annotation终极方案
特别提示:本人博客部分有参考网络其他博客,但均是本人亲手编写过并验证通过.如发现博客有错误,请及时提出以免误导其他人,谢谢!欢迎转载,但记得标明文章出处:http://www.cnblogs.com/ ...
- NP-Hard问题和NP-Complete问题
对 NP-Hard问题和NP-Complete问题的一个直观的理解就是指那些很难(很可能是不可能)找到多项式时间算法的问题.因此一般初学算法的人都会问这样一个问题:NP-Hard和NP-Complet ...
- Ajax学习--理解 Ajax 及其工作原理
Ajax 是 Asynchronous JavaScript and XML(以及 DHTML 等)的缩写. 下面是 Ajax 应用程序所用到的基本技术:• HTML 用于建立 Web 表单并确定应用 ...
- RF-创建一个自定义关键字库
仓库自定义库 这里以Selenium2Library库进行举例说明: 编写一个自定义仓库类(与库文件夹名一致),继承关键字类,指定范围和版本即可. 需要声明__init__. import os fr ...
- zoopkeeper 的ACL操作
1.创建一个变量存放模式信息, private static final String MODE = "digest"; //ACL模式 2.在一个类的构造函数内放入初始化信息 ...
- 使用同步上下文进行C#与VBA代码和Excel之间的交互
原始出处:www.cnblogs.com/Charltsing/p/RunVBA.html 大家都知道,Excel是个STA,不允许在Excel忙的时候对其Com对象进行操作,也不允许同时有多个线程对 ...
- leetcode 123. 买卖股票的最佳时机 III
使用动态规划的解法,空间复杂度O(2*2)如果交易k次则为O(2*k),时间复杂度O(2n),交易k次为O(n*k), 因此本题实际上可以退化为买卖一次的情况:去掉buy2和sell2,即leetco ...
- C#规范整理·语言要素
如有不理解,请留言,开始! 1. 正确操作字符串 拼接字符串一定要考虑使用 StringBuilder ,默认长度为16,实际看情况设置. StringBuilder本质: 是以非托管方式分配内存. ...
- Windows 10 无法访问共享的解决办法大全
本文前面介绍 Windows 10 操作系统无法访问其他电脑的共享文件夹,而其他电脑访问该共享可以访问的解决办法. 简单点说就是,你的操作系统是 Win10 ,你访问不了某台电脑的共享,但是别人可以. ...
- Jenkins持续集成环境部署
一.下载Jenkins Jenkins下载地址:https://jenkins.io/download/ 这里我们下载的是jenkins.war 二.启动Jenkins 在Linux下启动Jenkin ...