首页 > 解决方案 > 暴露 Nginx 容器并查看服务

问题描述

1.) 执行以下命令生成一个随机数,用于后面的步骤

NUMBER=$[ ( $RANDOM % 1000 ) + 1 ]

echo $NUMBER

注意:将句子您的随机数替换为您在找到该句子的任何地方生成的数字。

您的任务是启动一个由 Kubernetes Cluster 管理的 Kubernetes Engine,名称为 mycluster-your random number,并将其配置为运行 2 个节点。

2.) 运行和部署容器在这里,您需要从云外壳启动 Nginx 容器的单个实例(版本为 1.10.0)。

执行以下命令查看 nginx 容器中正在运行的 pod。**

3.) 首先,您需要将 Nginx 容器公开到 Internet。

Kubernetes 将使用具有公共 IP 地址的外部负载均衡器创建服务。您可以通过执行以下命令来查看您的服务。

kubectl get services

现在,您将获得 Nginx 集群的外部 IP 地址。打开新的 Web 浏览器选项卡并粘贴集群外部 IP 地址。您应该获得 Nginx 浏览器的默认主页。

到目前为止,我已经使用了以下代码,但是 lb 不起作用:

gcloud container clusters create mycluster-5 --zone=us-central1-a
kubectl create deployment mycluster --image=gcr.io/cloud-marketplace/google/nginx1
kubectl set image deployment nginx nginx=nginx:1.9.1
kubectl expose deployment mycluster-727 --type LoadBalancer --port 80 --target-port 8080
service/mycluster-727 exposed

标签: dockernginxkubernetesgoogle-cloud-platform

解决方案


它不工作的原因是 Pod 没有暴露端口。请运行以下命令而不是第二个命令。

kubectl run mycluster --image=gcr.io/cloud-marketplace/google/nginx1 --port=80

此命令应创建部署并公开containerPort您的服务可以访问的 on 80。


推荐阅读