git/pip/easy_install/apt代理/源设置

在公司内网环境中,访问公网往往需要经过公司的代理,对于浏览器、IDE等开发工具,都提供了设置代理的配置,而git、pip、easy_install等CLI工具,则需要通过命令或配置文件进行代理设置;对于Python、Ubuntu、Maven等研发环境,一些公司内网会提供镜像,加快访问速度。相关设置,在此做个笔记,避免每次用到了都去Google。

公司内网的代理,访问时往往需要用户名密码,在URL中带用户名密码的格式如下:

http://user:password@proxy_host:port

git配置代理

设置代理

git config --global http.proxy http://user:password@proxy_host:port
git config --global https.proxy http://user:password@proxy_host:port

给指定域名设置代理
如给github.com设置代理

git config --global http.https://github.com.proxy http://user:password@proxy_host:port

取消代理

git config --global --unset http.proxy
git config --global --unset https.proxy
git config --global --unset http.https://github.com.proxy

git代理常见错误处理

错误1:SSL certificate problem: unable to get local issuer certificate
原因:git默认开启了SSL验证,关闭即可。
解决办法:关闭SSL验证,配合如下。

git config --global http.sslVerify false
git config --global https.sslVerify false

错误2:Received HTTP code 407 from proxy after CONNECT
原理:代理认证错误
解决办法:代理配置正确的用户名密码

git config --global http.proxy http://user:password@proxy_host:port
git config --global https.proxy http://user:password@proxy_host:port

注:为了避免遗漏,最好把http和https的都配上。

pip配置代理

  • 直接在命令行中增加--proxy参数来指定代理

    pip install numpy --proxy http://user:password@proxy_host:port
  • 通过pip config set命令设置代理

    pip config set global.proxy http://user:password@proxy_host:port

    这里要注意下,pip官方帮助文档说的设置方法为 pip config [<file-option>] set name value ,这里的name直接写proxy会报ValueError: not enough values to unpack (expected 2, got 1)错误,name要写为<profile>.<key>格式,如这里的global.proxy
    此操作和直接改配置文件效果相同,但在不确定配置文件位置的时候,可以使用此操作来定位配置文件(执行后会提示修改的文件)。

  • 直接修改pip.ini文件进行配置

    [global]
    proxy=http://user:password@proxy_host:port 

pip配置源

Pip的配置文件为用户根目录下的:~/.pip/pip.conf(Windows路径为:$HOME\pip\pip.ini), 配置内容:

[global]
index-url = http://mirrors.xxx.com/pypi/simple
trusted-host = mirrors.xxx.com
timeout = 120

easy_install配置代理

Windows中

set http_proxy=http://user:password@proxy_host:port
set https_proxy=http://user:password@proxy_host:port

Linux中

export http_proxy=http://user:password@proxy_host:port
export https_proxy=http://user:password@proxy_host:port

easy_install配置源

easy_install的配置文件为用户根目录下的:~/.pydistutils.cfg(Windows路径为:$HOME\pydistutils.cfg), 配置内容:

[easy_install]
index-url = http://mirrors.xxx.com/pypi/simple

Ubuntu apt设置软件源

apt软件源的配置文件为 /etc/apt/sources.list,修改前请先备份。

  1. 修改sources.list文件,将http://archive.ubuntu.comhttp://security.ubuntu.com替换成http://mirrors.xxx.com,参考命令:

    sudo sed -i "s@http://.*archive.ubuntu.com@http://mirrors.xxx.com@g" /etc/apt/sources.list
    sudo sed -i "s@http://.*security.ubuntu.com@http://mirrors.xxx.com@g" /etc/apt/sources.list
  2. 执行apt-get update更新索引

Ubuntu apt设置代理

  1. 在/etc/apt/apt.conf.d/下建立一个配置文件,如proxy.conf
  2. 在配置文件中加入代理配置,有两种配置方法,举例如下:
    配置方法1:

    Acquire::http::Proxy "http://user:password@proxy.server:port/";
    Acquire::https::Proxy "http://user:password@proxy.server:port/";

    配置方法2:

    Acquire {
      HTTP::proxy "http://127.0.0.1:8080";
      HTTPS::proxy "http://127.0.0.1:8080";
    }

npm设置代理

npm conf set proxy http://user:password@proxy.server:port

代理导致证书问题处理方法:

npm config set strict-ssl false

五岁时,妈妈告诉我,人生的关键在于快乐。上学后,人们问我长大了要做什么,我写下“快乐”。他们告诉我...

101 声望
12 粉丝
0 条评论
推荐阅读
Linux find命令常见使用技巧
find是Linux中强大的文件查询命令,可以通过各种过滤条件查询想要的文件,还可以对查询结果执行进一步操作。本文对几个实用确容易误用的技巧进行介绍,完整的命令使用说明可通过info find查阅。

乘着风2阅读 959

git 常用命令 记录
有错误和改进的地方望留言,谢谢 : )顺便推荐一下,git入门教程Git 教程图解 GitPro Git 2(中文版)Git 使用Git 使用规范流程Git 工作流程Commit message 和 Change log 编写指南全局设置git config --system //...

Luff阅读 3.2k

低代码开发重要工具:jvs-logic(逻辑引擎)2.1.6版本功能清单
逻辑引擎是一种能够处理逻辑表达式的程序,它能够根据用户输入的表达式计算出表达式的值。在实际应用中,逻辑引擎通常被用于处理规则引擎、决策系统、业务规则配置等领域,具有广泛的应用前景。前面几期我们了解...

软件部长2阅读 432

被吐槽 GitHub仓 库太大,直接 600M 瘦身到 6M,这下舒服了
忙里偷闲学习了点技术写了点demo代码,打算提交到我那 2000Star 的Github仓库上,居然发现有5个Issues,最近的一条日期已经是2022/8/1了,以前我还真没留意过这些,我这人懒得很,本地代码提交成功基本就不管了。

程序员小富2阅读 1.4k评论 1

Ubuntu 20.04 搭建 Elasticsearch 7.x 小集群(qbit)
环境ES 节点硬件:3 台 AWS m5.4xlarge(16 vCPU/64GB 内存)Kibana 硬件:1 台 AWS m5.large(2 vCPU/8GB 内存)操作系统:Ubuntu 20.04 LTSElasticsearch 7.9.3Kibana 7.9.3机器示意图操作系统这里主要讲 EBS ...

qbit阅读 4.1k

书写友好的提交信息
其中开头部分表明了本次提交的类型(是添加功能还是修复错误等),范围则描述了修改的影响面,然后是一段简要的描述,更多详细的信息则可以在正文中进行描述。

Kisstar阅读 3k

Coding 官方推出网站服务状态页面啦!
第一部分是系统运行状态。如下图,提示所有系统的运行状态,如 Coding 网站访问状态, Git 服务,QC 服务和 Paas 服务等:第二部分是系统指标。System Metrics 两个图表示的分别是 Coding 官方网站的实时响应时间...

CODING阅读 2.8k

五岁时,妈妈告诉我,人生的关键在于快乐。上学后,人们问我长大了要做什么,我写下“快乐”。他们告诉我...

101 声望
12 粉丝
宣传栏