本仓库是 https://hub.docker.com/_/httpd 的 i386 架构专用构建版本。更多信息请参见官方镜像文档中的 https://github.com/docker-library/official-images#architectures-other-than-amd64 和官方镜像 FAQ 中的 https://github.com/docker-library/faq#an-images-source-changed-in-git-now-what%E3%80%82
https://github.com/docker-library/httpd
Docker 社区 Slack、Server Fault、Unix & Linux 或 Stack Overflow
Apache HTTP Server(简称 Apache 或 httpd)是一款广泛使用的 Web 服务器应用程序,在万维网的早期发展中发挥了关键作用。其最初基于 NCSA HTTPd 服务器开发,1995 年初 NCSA 代码开发停滞之后,Apache 的开发工作启动。Apache 迅速超越 NCSA HTTPd 成为主流 HTTP 服务器,并自 1996 年 4 月起一直是使用最广泛的 HTTP 服务器。
!https://raw.githubusercontent.com/docker-library/docs/8e367edd887f5fe876890a0ab4d08806527a1571/httpd/logo.png
主要用途:
-alpine 标签版本,镜像体积显著减小(约 5MB 基础镜像),适合资源受限场景。使用 Dockerfile 部署
在项目中创建 Dockerfile:
dockerfileFROM i386/httpd:2.4 COPY ./public-html/ /usr/local/apache2/htdocs/
(其中 public-html/ 为项目中存放 HTML 文件的目录)
构建并运行镜像:
console$ docker build -t my-apache2 . $ docker run -dit --name my-running-app -p 8080:80 my-apache2
访问 http://localhost:8080,将显示默认页面或自定义的静态内容。
不使用 Dockerfile 直接运行
通过挂载本地目录到容器内 Web 根目录,无需编写 Dockerfile:
console$ docker run -dit --name my-apache-app -p 8080:80 -v "$PWD":/usr/local/apache2/htdocs/ i386/httpd:2.4
("$PWD" 为当前工作目录,需包含待托管的 HTML 文件)
创建 docker-compose.yml 文件:
yamlversion: '3' services: httpd: image: i386/httpd:2.4 container_name: my-apache-service ports: - "8080:80" # 映射 HTTP 端口 # - "443:443" # 如需 HTTPS,取消注释并映射 443 端口 volumes: - ./public-html:/usr/local/apache2/htdocs # 挂载静态文件目录 # - ./my-httpd.conf:/usr/local/apache2/conf/httpd.conf # 如需自定义配置,取消注释并挂载配置文件 restart: unless-stopped # 容器退出时自动重启(非手动停止除外)
启动服务:
console$ docker-compose up -d
获取默认配置文件
如需修改 Apache 配置,先从容器中提取默认配置:
console$ docker run --rm i386/httpd:2.4 cat /usr/local/apache2/conf/httpd.conf > my-httpd.conf
应用自定义配置
通过 Dockerfile 复制自定义配置:
dockerfileFROM i386/httpd:2.4 COPY ./my-httpd.conf /usr/local/apache2/conf/httpd.conf # 替换默认配置
或通过运行时挂载配置文件:
console$ docker run -dit --name my-custom-apache -p 8080:80 -v "$PWD/my-httpd.conf":/usr/local/apache2/conf/httpd.conf i386/httpd:2.4
准备证书文件:将 server.crt(证书)和 server.key(私钥)放置在本地目录(如 ./ssl/)。
修改配置启用 SSL 模块:
编辑自定义配置文件 my-httpd.conf,移除以下行的注释符号(#):
apacheconf#LoadModule socache_shmcb_module modules/mod_socache_shmcb.so #LoadModule ssl_module modules/mod_ssl.so #Include conf/extra/httpd-ssl.conf
通过 Dockerfile 自动启用 SSL(可选):
dockerfileFROM i386/httpd:2.4 # 启用 SSL 模块并包含 SSL 配置 RUN sed -i \ -e 's/^#\(Include .*httpd-ssl.conf\)/\1/' \ -e 's/^#\(LoadModule .*mod_ssl.so\)/\1/' \ -e 's/^#\(LoadModule .*mod_socache_shmcb.so\)/\1/' \ conf/httpd.conf # 复制证书文件 COPY ./ssl/server.crt /usr/local/apache2/conf/ COPY ./ssl/server.key /usr/local/apache2/conf/
运行容器并映射 443 端口:
console$ docker run -dit --name my-ssl-apache -p 8080:80 -p 443:443 my-ssl-apache-image
i386/httpd 镜像提供多种标签变体,适用于不同场景:
i386/httpd:<version>(如 2.4.65, 2.4, latest)trixie 对应 Debian 发行版代号)。i386/httpd:<version>-alpine(如 2.4.65-alpine, alpine)bash、git 等工具,需通过 apk add 手动安装。本镜像包含的软件许可证信息请参见 Apache 官方许可证页面。
与所有 Docker 镜像一样,本镜像可能包含其他软件(如基础系统的 Bash 等),这些软件可能具有各自的许可证。
部分自动检测到的额外许可证信息可在 https://github.com/docker-library/repo-info/tree/master/repos/httpd 中找到。
对于任何预构建镜像的使用,镜像用户有责任确保其使用行为符合镜像内所有软件的相关许可证要求。
以下是 i386/httpd 相关的常用 Docker 镜像,适用于 不同场景 等不同场景:
您可以使用以下命令拉取该镜像。请将 <标签> 替换为具体的标签版本。如需查看所有可用标签版本,请访问 标签列表页面。

探索更多轩辕镜像的使用方法,找到最适合您系统的配置方式
通过 Docker 登录认证访问私有仓库
无需登录使用专属域名
Kubernetes 集群配置 Containerd
K3s 轻量级 Kubernetes 镜像加速
VS Code Dev Containers 配置
Podman 容器引擎配置
HPC 科学计算容器配置
ghcr、Quay、nvcr 等镜像仓库
Harbor Proxy Repository 对接专属域名
Portainer Registries 加速拉取
Nexus3 Docker Proxy 内网缓存
需要其他帮助?请查看我们的 常见问题Docker 镜像访问常见问题解答 或 提交工单
docker search 限制
站内搜不到镜像
离线 save/load
插件要用 plugin install
WSL 拉取慢
安全与 digest
新手拉取配置
镜像合规机制
manifest unknown
no matching manifest(架构)
invalid tar header(解压)
TLS 证书失败
DNS 超时
域名连通性排查
410 Gone 排查
402 与流量用尽
401 认证失败
429 限流
D-Bus 凭证提示
413 与超大单层
来自真实用户的反馈,见证轩辕镜像的优质服务