webhippie/errorserrors镜像是一个为Kubernetes集群中的Nginx Ingress Controller提供自定义默认页面和错误页面的解决方案。该项目默认内置简洁美观的标准错误页面(如404、500等),同时支持用户根据需求自定义页面内容,适用于需要统一入口页面风格或品牌化错误响应的Kubernetes环境。
该镜像可从以下仓库拉取:
ghcr.io/webhippie/errors:latestwebhippie/errors:latestquay.io/webhippie/errors:latest拉取命令示例:
bash# 从GHCR拉取最新版 docker pull ghcr.io/webhippie/errors:latest # 从Docker Hub拉取特定版本 docker pull webhippie/errors:v1.0.0
使用以下命令在本地启动容器进行测试:
bashdocker run -d -p 8080:8080 --name errors-demo ghcr.io/webhippie/errors:latest
启动后可通过访问以下地址验证:
http://localhost:8080http://localhost:8080/404http://localhost:8080/500创建Deployment和Service资源清单(errors-backend.yaml):
yamlapiVersion: apps/v1 kind: Deployment metadata: name: errors-backend namespace: ingress-nginx spec: replicas: 2 selector: matchLabels: app: errors-backend template: metadata: labels: app: errors-backend spec: containers: - name: errors image: ghcr.io/webhippie/errors:latest ports: - containerPort: 8080 resources: requests: cpu: 10m memory: 16Mi limits: cpu: 100m memory: 64Mi --- apiVersion: v1 kind: Service metadata: name: errors-backend namespace: ingress-nginx spec: selector: app: errors-backend ports: - port: 80 targetPort: 8080
应用部署清单:
bashkubectl apply -f errors-backend.yaml
修改Nginx Ingress Controller的部署配置,设置默认后端服务:
bash# 假设Ingress Controller部署在ingress-nginx命名空间 kubectl edit deployment nginx-ingress-controller -n ingress-nginx
在spec.template.spec.containers.args中添加或修改:
yaml- --default-backend-service=ingress-nginx/errors-backend
通过ConfigMap或PersistentVolume挂载自定义页面文件到容器的/app/public目录(需根据实际项目结构调整路径):
yaml# 在Deployment中添加volume挂载配置 spec: containers: - name: errors image: ghcr.io/webhippie/errors:latest volumeMounts: - name: custom-pages mountPath: /app/public volumes: - name: custom-pages configMap: name: errors-custom-pages # 包含自定义HTML文件的ConfigMap
基于官方镜像添加自定义页面文件,创建Dockerfile:
dockerfileFROM ghcr.io/webhippie/errors:latest COPY ./custom-pages /app/public
构建并推送自定义镜像:
bashdocker build -t my-custom-errors:latest . docker push my-custom-errors:latest
若需自行构建镜像,需满足以下环境要求:
构建步骤:
bash# 克隆代码仓库 git clone [***] cd errors # 构建二进制文件 task build # 构建Docker镜像 docker build -t custom-errors:latest .
官方镜像仓库:
manifest unknown 错误
TLS 证书验证失败
DNS 解析超时
410 错误:版本过低
402 错误:流量耗尽
身份认证失败错误
429 限流错误
凭证保存错误
来自真实用户的反馈,见证轩辕镜像的优质服务