Open Science Grid Frontier Squid proxy cache
567
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.
Content type
Image
Digest
Size
128.1 MB
Last updated
over 10 years ago
docker pull lincolnbryant/osg-squid-3.3-el6