Introducing our new CEO Don Johnson - Read More

ubuntu/squid

Verified Publisher

By Canonical

Updated 2 months ago

Squid is a caching proxy for the Web. Long-term versions maintained by Canonical.

Image
Web Servers
106

10M+

Squid | Ubuntu

Current Squid Docker Image from Canonical, based on Ubuntu. Receives security updates and rolls to newer Squid or Ubuntu release. This repository is free to use and exempted from per-user rate limits.

About Squid

Squid is a caching proxy for the Web supporting HTTP, HTTPS, FTP, and more. It reduces bandwidth and improves response times by caching and reusing frequently-requested web pages. Squid has extensive access controls and makes a great server accelerator. It runs on most available operating systems, including Windows and is licensed under the GNU GPL.

Tags and Architectures

LTS Up to 5 years of free security maintenance on LTS channels.

ESM Up to 10 years of customer security maintenance from Canonical's restricted repositories.

Channel TagsSupported untilCurrentlyArchitectures
5.2-22.04_beta-Squid 5.2 on Ubuntu 22.04 LTSamd64, arm64, ppc64el, s390x
4.13-21.10_beta-Squid 4.13 on Ubuntu 21.10 nullamd64, arm64, ppc64el, s390x
4.10-20.04_beta-Squid 4.10 on Ubuntu 20.04 LTSamd64, arm64, ppc64el, s390x
track_risk

Channel Tags shows the most stable channel for that track ordered stable, candidate, beta, edge. More risky channels are always implicitly available. So if beta is listed, you can also pull edge. If candidate is listed, you can pull beta and edge. When stable is listed, all four are available. Images are guaranteed to progress through the sequence edge, beta, candidate before stable.

Commercial use and Extended Security Maintenance channels

If your usage includes commercial redistribution, or requires ESM or unavailable channels/versions, please get in touch with the Canonical team (or using rocks@canonical.com).

Usage

Launch this image locally:

docker run -d --name squid-container -e TZ=UTC -p 3128:3128 ubuntu/squid:5.2-22.04_beta

Access your Squid proxy at localhost:3128.

Parameters

ParameterDescription
-e TZ=UTCTimezone.
-p 3128:3128Expose the proxy service
-v /path/to/logs:/var/log/squidVolume to store squid logs
-v /path/to/data:/var/spool/squidVolume to store the squid cache
-v /path/to/main/config:/etc/squid/squid.confMain squid configuration file
-v /path/to/config/snippet:/etc/squid/conf.d/snippet.confConfiguration snippets included by squid.conf

Testing/Debugging

To debug the container:

docker logs -f squid-container

To get an interactive shell:

docker exec -it squid-container /bin/bash

Deploy with Kubernetes

Works with any Kubernetes; if you don't have one, we recommend you install MicroK8s and microk8s.enable dns storage then snap alias microk8s.kubectl kubectl.

Download squid.conf and squid-deployment.yml and set containers.squid.image in squid-deployment.yml to your chosen channel tag (e.g. ubuntu/squid:5.2-22.04_beta), then:

kubectl create configmap squid-config --from-file=squid=squid.conf
kubectl apply -f squid-deployment.yml

You can now access the squid proxy on port 3128

Bugs and feature requests

If you find a bug in our image or want to request a specific feature, please file a bug here:

https://bugs.launchpad.net/ubuntu-docker-images/+filebug

Please title the bug "squid: <issue summary>". Make sure to include the digest of the image you are using, from:

docker images --no-trunc --quiet ubuntu/squid:<tag>

Deprecated channels & tags

These channels (tags) are not updated anymore. Please upgrade to newer channels, or reach out if you can't upgrade.

TrackVersionEOLUpgrade Path
track

Docker Pull Command

docker pull ubuntu/squid