各种代理设置汇总记录
背景
以前博客多多少少写个一些常用工具的代理设置,这里做一个汇总, 以后有更多工具使用代理直接在此处记录了
说明
如果代理有用户名密码的话, 使用
1 | http://username:password@127.0.0.1:1087 |
Mac 终端代理设置
export HTTP_PROXY=http://127.0.0.1:1087
export SOCKS5_PROXY=socks5://127.0.0.1:1086
export ALL_PROXY=socks5://127.0.0.1:1086
我一般直接使用最后一种方式,简单粗暴
HomeBrew 代理设置
同上, 因为 brew 走的 curl,代理设置通用
Git 代理配置
需要全局 git 都走代理
git config --global http.proxy 'socks5://127.0.0.1:1080'
git config --global https.proxy 'socks5://127.0.0.1:1080'
取消
git config --global --unset http.proxy
git config --global --unset https.proxy
但是有时候我们并不需要所有的 git 仓库都走代理,可以去掉上述的命令中的 –global,然后到你需要走代理的那个 git 仓库下执行命令,或者添加配置:
单独配置 git 走代理
在 .git => config 文件中加入配置
1 | [https] |
配置仅 Github 走代理
1 | git config --global http.https://github.com.proxy http://127.0.0.1:7890 |
注意这里不需要配置 https, 配置 http 就可以生效了
Linux 终端代理
同 Mac 终端代理设置
Ubuntu 桌面版使用全局代理
以前我使用的是: http://blog.joylau.cn/2018/08/08/Git-Proxy-And-Ubuntu-Global-Proxy/
现在我使用的是: Clash
Gradle 配置代理
配置 gradle.properties
1 | ## http |
另一种快速的方法是使用阿里云的 maven 仓库
配置如下:
在用户目录下的 .gradle 的目录下新建文件 init.gradle
1 | allprojects { |
Docker 配置代理
在命令行使用 export HTTP_PROXY=xxxx:xx , 命令行里绝大部分命令都可以使用此代理联网,但是安装的 docker 不行,无法 pull 下来镜像文件,想要 pull 使用代理的话,需要添加代理的变量
vim /usr/lib/systemd/system/docker.service
添加
Environment=HTTP_PROXY=http://xxxx:xxx
Environment=HTTPS_PROXY=http://xxxx:xxx
保存
systemctl deamon-reload
systemctl restart docker
npm 使用代理
npm 支持 http 代理,但是不支持 socks 代理
1 | npm config set proxy "http://localhost:1087" |
该设置方式是永久的,全局的,想要取消的话,使用
删除代理
1 | npm config delete proxy |
apt-get 使用代理
使用参数 -o Acquire
1 | sudo apt-get -o Acquire::http::proxy="http://host:port" update/install ... |
该代理是一次性的,关闭 shell 即失效
JVM 使用代理配置
1 | -DsocksProxyHost=172.16.1.201 -DsocksProxyPort=60798 |
在该代理基础上需要排除一些不需要使用代理的, 需要再加上
1 | -Dhttp.nonProxyHosts="192.168.1.*|172.16.*.*" -DsocksNonProxyHosts="192.168.1.*|172.16.*.*" |
Postman 使用 socks5 代理
默认的 Postman 不支持使用 socks5 代理,支持 http和 https 代理, 需要转换下即可
使用方法:
- 安装 http-proxy-to-socks
npm install -g http-proxy-to-socks
- 开启转发
hpts -s 172.16.1.200:60798 -p 7951
本地的 7951 端口转发到远程的 60798 端口 - 之后正常设置 http 代理即可