# docker_squid **Repository Path**: xiwanggit/docker_squid ## Basic Information - **Project Name**: docker_squid - **Description**: squid代理docker部署&设置 - **Primary Language**: Docker - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 2 - **Forks**: 4 - **Created**: 2021-01-05 - **Last Updated**: 2024-04-07 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README ### 启动 * 认证文件 * **使用认证** * 本地用`htpasswd`生成认证文件 * 将其`copy`至`./conf`下 * 修改`docker-compose.yml`中对应的映射`/etc/squid/squid_passwd` * **不使用认证** * 修改`./conf/squid.conf`,将第30-33行的`username&password auth config`注释掉 * 去掉`docker-compose.yml`中对应的映射`/etc/squid/squid_passwd` * 启动:`docker-compose up -d` ### squid配置相关 * 生成认证文件:`htpasswd`的用法 * 创建用户名&密码:`htpasswd -cb file_name user_name passwd`。如:`htpasswd -cb squid_passwd test 123456` * 去掉-c选项即可在第一个用户之后添加第二个用户:`htpasswd -b file_name Sun 1234565` * 映射文件位置 * 缓存位置:`/var/spool/squid` * 配置文件:`/etc/squid/squid.conf` * 认证文件位置:`/etc/squid/squid_passwd` ### 代理验证 * 申明环境变量 * 带用户名 & 口令的代理 ``` export http_proxy=http://{user_name}:{passwd}@{ip}:{port} export https_proxy=http://{user_name}:{passwd}@{ip}:{port} ``` * 不带用户名和口令的代理 ``` export http_proxy=http://{ip}:{port} export https_proxy=http://{ip}:{port} ``` * 验证:`wget www.baidu.com` ### 代理设置 * 全局:将上述的`export`内容追加到文件`/etc/environment`或`/etc/profile`或`/etc/profile.d/http_proxy.sh`中 * docker * 创建文件`/etc/systemd/system/docker.service.d/http-proxy.conf`,内容如下: ``` [Service] Environment="HTTP_PROXY=http://{ip}:{port}" "HTTPS_PROXY=http://{ip}:{port}" "NO_PROXY=localhost,10.0.0.147" ``` * 重启docker ``` systemctl daemon-reload systemctl restart docker ``` * 验证 * `docker info` * `systemctl show --property=Environment docker`:返回如下内容则成功 * `Environment=GOTRACEBACK=crash HTTP_PROXY=http://pill:pill@node2:3128/` * yum:在`/etc/yum.conf`中追加如下内容 ``` proxy=http://{ip}:{port} ``` * apt:在`/etc/apt/apt.conf`中追加如下内容 ``` Acquire::http::proxy "http://{ip}:{port}"; Acquire::https::proxy http://{ip}:{port}; ```