地址:https://www.jianshu.com/p/5e84046de28c
部分服务器集群运行在局域网环境,无法联网,使用conda或pip时需在本地下载安装包上传再安装。可设置本机http监听端口,通过SSH隧道的反向代理功能实现服务器联网,下载各种安装包。
1. 本地联网电脑设置
需安装http代理软件,Ubuntu系统可使用TinyProxy,Windows系统则使用WProxy。
i. Ubuntu系统( 或使用win10的WSL1子系统 )
使用sudo apt-get install tinyproxy命令安装TinyProxy代理服务器,修改/etc/tinyproxy/tinyproxy.conf第23行Port监听端口(示例为20810),注释第212行Allow 127.0.0.1允许所有IP连接。运行sudo service tinyproxy start启动TinyProxy代理服务器。
ii. Windows系统
使用WProxy软件设置http代理。
WProxy软件界面
WProxy软件http代理配置界面
2. 服务器端设置
i. 若服务器可以连接本地电脑(在同一局域网)
示例192.168.26.151为本地电脑IP,在本地电脑防火墙设置中开放20810端口外部连接权限。
环境变量中设置代理
export http_proxy=http://192.168.26.151:20810
export https_proxy=http://192.168.26.151:20810
export ftp_proxy=http://192.168.26.151:20810
可添加至.bashrc文件中,该代理设置会影响所有可通过http代理联网的软件命令,也可以分别针对conda、pip、wget设置代理。
conda
在服务器用户根目录下新建.condarc文本文件,写入代理IP及端口,最后五行为设置使用国内镜像及显示包来源。
proxy_servers:
http: http://192.168.26.151:20810
https: http://192.168.26.151:20810
channels:
- https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/
- conda-forge
- defaults
show_channel_urls: true
pip
在pip命令后添加--proxy="192.168.26.151:20810"使用临时代理,或在服务器用户根目录下新建.pip文件夹,在文件夹中新建pip.conf文本文件,写入代理IP及端口,最后一行为设置使用国内镜像。
[global]
proxy=192.168.26.151:20810
index-url=https://mirrors.aliyun.com/pypi/simple
wget
在wget命令后添加-e "http_proxy=192.168.26.151:20810"使用临时代理,或在服务器用户根目录下新建.wgetrc文件,写入代理IP及端口。
# You can set the default proxies for Wget to use for http, https, and ftp.
# They will override the value in the environment.
https_proxy = http://192.168.26.151:20810
http_proxy = http://192.168.26.151:20810
ftp_proxy = http://192.168.26.151:20810
# If you do not want to use proxy at all, set this to off.
use_proxy = on
ii. 若服务器无法连接本地电脑
利用ssh的隧道的反向代理功能将本地http监听端口转移到服务器。
Xshell隧道端口转发设置
命令行参数为
ssh -gnNTf -R 20814:localhost:20814 test@10.68.0.111
代理配置中的IP改为127.0.0.1,同时可设置conda和pip使用国内镜像。
环境变量中设置代理
export http_proxy=http://127.0.0.1:20810
export https_proxy=http://127.0.0.1:20810
export ftp_proxy=http://127.0.0.1:20810
conda
proxy_servers:
http: http://127.0.0.1:20810
https: http://127.0.0.1:20810
channels:
- https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/
- conda-forge
- defaults
show_channel_urls: true
pip
[global]
proxy=127.0.0.1:20810
index-url=https://mirrors.aliyun.com/pypi/simple
wget
# You can set the default proxies for Wget to use for http, https, and ftp.
# They will override the value in the environment.
https_proxy = http://127.0.0.1:20810
http_proxy = http://127.0.0.1:20810
ftp_proxy = http://127.0.0.1:20810
# If you do not want to use proxy at all, set this to off.
use_proxy = on
3. 使用SOCKS代理
conda、pip及wget无法直接使用SOCKS代理,可安装tsocks工具,在服务器用户根目录下新建.tsocks.conf文件,写入SOCKS类型、代理IP及端口。
server = 127.0.0.1
server_type = 5
server_port = 20810
在需使用代理的命令前添加tsocks即可。
网友评论