该镜像为 Istio 官方提供的示例应用镜像,用于支持 Istio 服务网格的功能演示和文档教程。其核心用途是帮助用户快速部署和验证 Istio 的核心特性,降低学习和测试门槛,配合 Istio 官方文档([***]
4.2.1 部署官方示例应用
以 Istio 经典 Bookinfo 示例为例,通过 Kubernetes 资源清单部署:
bash# 部署 Bookinfo 应用(包含该示例镜像的多个服务) kubectl apply -f https://raw.githubusercontent.com/istio/istio/release-1.20/samples/bookinfo/platform/kube/bookinfo.yaml # 验证部署状态(确保所有 Pod 均为 Running 状态) kubectl get pods -n default
4.2.2 功能验证
部署完成后,通过 Istio Ingress Gateway 访问示例服务,验证流量路由等功能:
bash# 获取 Ingress Gateway 入口地址 export INGRESS_HOST=$(kubectl -n istio-system get service istio-ingressgateway -o jsonpath='{.status.loadBalancer.ingress[0].ip}') export INGRESS_PORT=$(kubectl -n istio-system get service istio-ingressgateway -o jsonpath='{.spec.ports[?(@.name=="http2")].port}') export GATEWAY_URL=$INGRESS_HOST:$INGRESS_PORT # 访问 productpage 服务 curl "http://$GATEWAY_URL/productpage"
4.3.1 运行示例容器
通过 docker run 启动单个示例服务(仅用于基础功能演示,不含 Istio 代理注入):
bash# 拉取并运行示例镜像(替换 <tag> 为具体版本,如 1.20.0) docker run --name istio-sample -d -p 8080:8080 istio/samples:<tag>
4.3.2 验证容器状态
bash# 查看容器日志 docker logs istio-sample # 访问服务(若镜像包含 HTTP 服务) curl http://localhost:8080
示例镜像主要用于演示,配置项较少,支持通过环境变量调整基础服务参数:
| 参数名 | 描述 | 默认值 |
|---|---|---|
SERVICE_NAME | 示例服务名称 | sample-service |
PORT | 服务监听端口 | 8080 |
LOG_LEVEL | 日志输出级别 | info |
适用于本地快速启动多服务示例(模拟服务网格环境):
yamlversion: '3' services: sample-service-a: image: istio/samples:<tag> container_name: sample-a ports: - "8080:8080" environment: - SERVICE_NAME=service-a - PORT=8080 - LOG_LEVEL=debug sample-service-b: image: istio/samples:<tag> container_name: sample-b ports: - "8081:8080" environment: - SERVICE_NAME=service-b - PORT=8080 depends_on: - sample-service-a networks: default: driver: bridge
启动命令:
bashdocker-compose up -d
以下为单个示例服务的 Deployment 配置(需配合 Istio Sidecar 注入):
yamlapiVersion: apps/v1 kind: Deployment metadata: name: sample-service spec: replicas: 1 selector: matchLabels: app: sample-service template: metadata: labels: app: sample-service # 用于 Istio 服务发现 spec: containers: - name: sample-app image: istio/samples:<tag> ports: - containerPort: 8080 env: - name: SERVICE_NAME value: "sample-service" - name: PORT value: "8080"
应用配置:
bash# 启用命名空间的 Sidecar 自动注入 kubectl label namespace default istio-injection=enabled # 部署服务 kubectl apply -f sample-deployment.yaml
1.20.0)。您可以使用以下命令拉取该镜像。请将 <标签> 替换为具体的标签版本。如需查看所有可用标签版本,请访问 标签列表页面。
探索更多轩辕镜像的使用方法,找到最适合您系统的配置方式
通过 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 与超大单层
来自真实用户的反馈,见证轩辕镜像的优质服务