Skip to content

Docker image for a Squid forward proxy with authorization (fully anonymous)

License

Notifications You must be signed in to change notification settings

yegor256/squid-proxy

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

92 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Docker Image of an Anonymous HTTP Proxy

docker Docker Cloud Automated build License

This Docker image helps you start your own Squid proxy server, with HTTP Basic authorization. You may need this if you want your crawling/scaping software to look like constantly going to the Network from the same IP address. You rent a VPS, start a Squid server there and configure your software to go everywhere through an explicit HTTP(S) proxy.

When Docker is installed, run this:

$ docker run --name proxy --detach --restart=always --publish 8081:3128 \
  --env USERNAME=jeffrey --env PASSWORD=swordfish \
  yegor256/squid-proxy

Or, you can use docker compose:

version: '3'
services:
  proxy:
    image: yegor256/squid-proxy
    restart: always
    ports:
      - "8081:3128"
    environment:
      - USERNAME=jeffrey
      - PASSWORD=swordfish

Now you can connect to localhost:8081 with jeffrey:swordfish credentials. For example:

curl -vvv --proxy http://jeffrey:swordfish@0.0.0.0:8081 https://google.com/

Or, with httpie:

http --proxy=http:http://jeffrey:swordfish@0.0.0.0:8081 https://google.com/

BTW, the proxy is anonymous. Once it's up and running, you can check whether it's visible, here. It also doesn't store any logs and doesn't cache any content.

Developing

Build it locally:

docker build . -t squid-proxy:latest

Want to push to a local machine?

docker save squid-proxy | ssh -C your@machine docker load