Public Repository

Last pushed: 2 years ago
Short Description
Open Science Grid Frontier Squid proxy cache
Full Description

This repo allows an operator to fully stand up an OSG Frontier Squid cache using only environment variables passed into the Docker runtime.

For example:

$ docker run -p 3128:3128/tcp -p 3401:3401/udp -ti -e IP_BLOCKS="10.0.0.0/8 198.51.100.0/24" -e MEMORY_MB=1024 -e CACHE_MB=100000 lincolnbryant/osg-squid-3.3-el6

The above creates a Squid service that is configured for 100GB of cache disk and 1GB of cache memory, serving IPs on 10.0.0.0/8 and 198.51.100.0/24

From another machine it can be tested simply:

$ export http_proxy=http://docker.lan:3128
$ wget -qdO/dev/null http://frontier.cern.ch 2>&1|grep X-Cache
X-Cache: MISS from fe05e319ecc5
$ wget -qdO/dev/null http://frontier.cern.ch 2>&1|grep X-Cache
X-Cache: HIT from fe05e319ecc5

And likewise we see it is successful in the container's logs:

==> /var/log/squid/access.log <==
198.51.100.128 - - [20/Jan/2016:23:19:40.276 +0000] "GET http://frontier.cern.ch/ HTTP/1.0" 200 9856 TCP_MISS:DIRECT 446 "- -" "-" "Wget/1.12 (linux-gnu)"
198.51.100.128 - - [20/Jan/2016:23:19:41.549 +0000] "GET http://frontier.cern.ch/ HTTP/1.0" 200 9863 TCP_MEM_HIT:NONE 0 "- -" "-" "Wget/1.12 (linux-gnu)"

If no environment variables are specified, the service defaults to 128MB RAM, 10GB disk and serves machines on 10.0.0.0/8, 172.16.0.0/12, and 192.168.0.0/16.

Docker Pull Command
Owner
lincolnbryant

Comments (0)