- Sources: 5个新文档 - Concepts: ProxyChains, SOCKS5代理, Docker Daemon代理 - Index: 更新至 Batch 9 - 累计 sources: 108/182
2.3 KiB
2.3 KiB
title, type, tags, date
| title | type | tags | date | ||||||
|---|---|---|---|---|---|---|---|---|---|
| Ubuntu Server 科学上网配置指南 | source |
|
2025-12-29 |
Source File
Summary
- 核心主题:Ubuntu Server 环境下配置科学上网的完整方案
- 问题域:终端命令/Git/Docker 守护进程/容器内应用如何走代理
- 方法/机制:分层代理架构——ProxyChains(临时命令)、Git 全局配置(Git 专设)、systemd Docker 代理(镜像拉取)、~/.docker/config.json(容器内应用)
- 结论/价值:不同场景用不同方案,不可混用;Daemon 层面走 systemd,用户层面走环境变量
Key Claims
ProxyChains(终端命令级)
- 修改
/etc/proxychains4.conf添加socks5 127.0.0.1 10808 - 任何命令前加
proxychains4前缀即可穿代理:proxychains4 curl https://google.com
Git 代理配置
- 设置全局:
git config --global http.proxy 'socks5://127.0.0.1:10808' - Docker 守护进程不走用户环境变量,必须通过 systemd 配置
Docker Pull 代理(Daemon 级)
- 创建
/etc/systemd/system/docker.service.d/http-proxy.conf - 添加
HTTP_PROXY/HTTPS_PROXY/NO_PROXY环境变量 - 必须执行
systemctl daemon-reload && systemctl restart docker - 验证:
docker info | grep -i proxy
Docker 容器内代理(应用级)
- 方案 A(推荐 17.07+):
~/.docker/config.json添加proxies.default - 方案 B:docker-compose.yml 环境变量
ALL_PROXY=socks5://172.24.0.1:10808 - 容器内获取宿主机 IP:
docker exec <container> ip route | awk '/default/ {print $3}'
Key Concepts
- ProxyChains:终端命令强制走 SOCKS5 代理工具
- SOCKS5 代理:支持本地 DNS 解析(socks5h://)的代理协议
- Docker Daemon 代理:Docker 守护进程级代理配置,通过 systemd 环境变量注入
- Docker 容器内代理:容器应用级代理,通过 ~/.docker/config.json 或 docker-compose environment
Key Entities
- V2RayN:SOCKS5/HTTP 代理客户端(运行在宿主机)
- Ubuntu Server:Linux 服务器操作系统
Connections
- V2RayN ← 提供代理 ← SOCKS5 代理
- ProxyChains ← 转发至 ← SOCKS5 代理
- Docker Daemon 代理 ← 配置 ← Ubuntu Server