在虚拟机上使用主机的代理

在虚拟机上使用主机的代理

开启v2ray 允许来自局域网连接,虚拟机使用NAT

  1. 安装 privoxy,privoxy 是一个常用的工具,可以将 SOCKS 代理转换为 HTTP 代理。首先在 CentOS 7 上安装privoxy:
sudo yum install privoxy
  1. 编辑 privoxy 的配置文件,将 SOCKS 代理转发到 HTTP 代理:
sudo vi /etc/privoxy/config

在文件的末尾添加主机SOCKS

forward-socks5t / 主机ip:SOCKS端口号 .
  1. 启动 privoxy
sudo systemctl start privoxy
sudo systemctl enable privoxy
  1. 设置环境变量
vi ~/.bashrc

添加

export http_proxy="http://127.0.0.1:8118"
export https_proxy="http://127.0.0.1:8118"

保存并关闭文件,然后应用更改

source ~/.bashrc
  1. 配置系统级代理
sudo vi /etc/profile

添加

export http_proxy="http://127.0.0.1:8118"
export https_proxy="http://127.0.0.1:8118"

保存并关闭文件,然后应用更改

source /etc/profile

测试

curl -I 要访问的网址

返回 HTTP/1.1 200 OK 等信息成功

### 如何在 Docker 虚拟机中设置 HTTP/HTTPS 代理 #### 创建并编辑 `http-proxy.conf` 文件 为了使 Docker 使用指定的 HTTP 或 HTTPS 代理服务器,在主机上创建一个新的配置文件: ```bash sudo touch /etc/systemd/system/docker.service.d/http-proxy.conf ``` 接着,向此文件添加具体的环境变量来定义代理地址[^1]。 #### 编辑 `http-proxy.conf` 的内容 打开刚才创建的文件并将如下所示的内容加入其中。请记得替换掉示例中的 URL 地址为实际可用的代理服务器地址以及端口号。 ```ini [Service] Environment="HTTP_PROXY=http://proxy.example.com:8080/" Environment="HTTPS_PROXY=https://proxy.example.com:8080/" Environment="NO_PROXY=localhost,127.0.0.1" ``` 上述命令设置了 HTTP 和 HTTPS 协议下的默认代理,并指定了不需要通过代理访问的目标列表(NO_PROXY)[^3]。 #### 更新 systemd 并重启 Docker 服务 完成以上修改之后,刷新 systemd 配置并且重新启动 Docker 守护进程以应用更改: ```bash sudo systemctl daemon-reload sudo systemctl restart docker ``` 这一步骤确保了新的代理设置能够被正确加载和生效。 #### 设置镜像加速器作为替代方案 对于国内用户而言,除了配置全局代理外还可以考虑使用官方推荐的中国区镜像站点加快拉取速度。可以通过编辑 `/etc/docker/daemon.json` 来实现这一点。例如: ```json { "registry-mirrors": [ "https://ustc-edu-cn.mirror.aliyuncs.com/", "https://do.nark.eu.org", "https://ccr.ccs.tencentyun.com/", "https://dockerproxy.com", "https://docker.m.daocloud.io/" ] } ``` 保存文件后同样需要执行上面提到的服务重载操作让改动即时生效[^4]。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值