ubuntu/squid
Squid is a caching proxy for the Web. Long-term versions maintained by Canonical.
10M+
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.
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.
Up to 5 years of free security maintenance on LTS channels.
Up to 10 years of customer security maintenance from Canonical's restricted repositories.
Channel Tags | Supported until | Currently | Architectures |
---|---|---|---|
5.2-22.04_beta | - | Squid 5.2 on Ubuntu 22.04 LTS | amd64 , arm64 , ppc64el , s390x |
4.13-21.10_beta | - | Squid 4.13 on Ubuntu 21.10 null | amd64 , arm64 , ppc64el , s390x |
4.10-20.04_beta | - | Squid 4.10 on Ubuntu 20.04 LTS | amd64 , 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
.
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).
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
Parameter | Description |
---|---|
-e TZ=UTC | Timezone. |
-p 3128:3128 | Expose the proxy service |
-v /path/to/logs:/var/log/squid | Volume to store squid logs |
-v /path/to/data:/var/spool/squid | Volume to store the squid cache |
-v /path/to/main/config:/etc/squid/squid.conf | Main squid configuration file |
-v /path/to/config/snippet:/etc/squid/conf.d/snippet.conf | Configuration 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
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
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>
These channels (tags) are not updated anymore. Please upgrade to newer channels, or reach out if you can't upgrade.
Track | Version | EOL | Upgrade Path |
---|---|---|---|
track |
docker pull ubuntu/squid