ubuntu/apache2
Apache, a secure & extensible open-source HTTP server. Long-term tracks maintained by Canonical.
1M+
Current Apache2 Docker Image from Canonical, based on Ubuntu. Receives security updates and tracks the newest combination of Apache2 and Ubuntu. This repository is free to use and exempted from per-user rate limits.
The Apache HTTP Server Project's goal is to build a secure, efficient and extensible HTTP server as standards-compliant open source software. The result has long been the number one web server on the Internet. Read more on the apache2 website.
Up to 5 years free security maintenance on LTS channels.
Up to 10 years customer security maintenance
from canonical/apache2
. Request access.
Tags in italics are not available in ubuntu/apache2 but are shown here for completeness.
Channel Tag | Currently | Architectures | ||
---|---|---|---|---|
2.4-22.04_beta | ![]() | Apache2 2.4 on Ubuntu 22.04 LTS | amd64 , arm64 , ppc64el , s390x | |
2.4-20.04_beta | ![]() | Apache2 2.4.41 on Ubuntu 20.04 LTS | amd64 , arm64 , ppc64el , s390x | |
track_risk |
Channel Tag shows the most stable channel for that track. A track is a combination of both the application version and the underlying Ubuntu series, eg 1.0-22.04
.
Channels are ordered from the most stable to the least 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 unavailable channels/versions, please get in touch with the Canonical team (or using rocks@canonical.com).
Launch this image locally:
docker run -d --name apache2-container -e TZ=UTC -p 8080:80 ubuntu/apache2:2.4-22.04_beta
Access your Apache2 server at http://localhost:8080
.
Parameters
Parameter | Description |
---|---|
-e TZ=UTC | Timezone. |
-p 8080:80 | Expose Apache2 on localhost:8080 . |
-v /local/path/to/website:/var/www/html | Mount and serve a local website. |
-v /path/to/apache2.conf:/etc/apache2/apache2.conf | Local configuration fileapache2.conf (try this example). |
Testing/Debugging
To debug the container:
docker logs -f apache2-container
To get an interactive shell:
docker exec -it apache2-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
apache2.conf, index.html and
apache2-deployment.yml and set containers.apache2.image
in apache2-deployment.yml
to your chosen channel tag (e.g. ubuntu/apache2:2.4-22.04_beta
), then:
kubectl create configmap apache2-config --from-file=apache2=apache2.conf --from-file=apache2-site=index.html
kubectl apply -f apache2-deployment.yml
You will now be able to connect to the apache2 server on http://localhost:30080
.
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 "apache2: <issue summary>
". Make sure to include the digest of the image you are using, from:
docker images --no-trunc --quiet ubuntu/apache2:<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 |
---|---|---|---|
Apache2 2.4.48 on Ubuntu 21.10 | 07/2022 | 2.4-22.04_beta | |
Apache2 2.4.46 on Ubuntu 21.04 | 01/2022 | ||
track |
docker pull ubuntu/apache2