Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/kubernetes/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Kubernetes 尝试在minikube中公开docker容器时出错_Kubernetes_Minikube - Fatal编程技术网

Kubernetes 尝试在minikube中公开docker容器时出错

Kubernetes 尝试在minikube中公开docker容器时出错,kubernetes,minikube,Kubernetes,Minikube,我使用minikube来了解docker,但我遇到了一个问题 我正在跟随Kubernetes中的例子,我试图从docker hub帐户中获取一个pod,但我无法使这个pod可见 如果我跑 kubectl get pod 我可以看到吊舱是存在的 NAME READY STATUS RESTARTS AGE kubia 1/1 Running 1 6d22h 但是,当我执行创建服务的第一步时 kubectl expose rc kubia -

我使用minikube来了解docker,但我遇到了一个问题

我正在跟随Kubernetes中的例子,我试图从docker hub帐户中获取一个pod,但我无法使这个pod可见

如果我跑

kubectl get pod
我可以看到吊舱是存在的

NAME    READY   STATUS    RESTARTS   AGE
kubia   1/1     Running   1          6d22h
但是,当我执行创建服务的第一步时

kubectl expose rc kubia --type=LoadBalancer --name kubia-http service "kubia-http" exposed
我正在返回此错误

Error from server (NotFound): replicationcontrollers "kubia" not found
Error from server (NotFound): replicationcontrollers "service" not found
Error from server (NotFound): replicationcontrollers "kubia-http" not found
Error from server (NotFound): replicationcontrollers "exposed" not found
你知道我为什么会犯这个错误吗?我需要做些什么来纠正它


我在mac Mojave(v10.14.6)上使用minikube v1.13.1,无法升级,因为我使用的是公司提供的机器,所有更新都由HQ控制。

复制控制器是比在Kubernetes、checkout中创建服务和部署更古老的概念

服务模板如下所示:

apiVersion: v1
kind: Service
metadata:
  name: my-service
spec:
  selector:
    app: App
  ports:
    - protocol: tcp
      port: 80
      targetPort: 8080
然后将服务配置保存到文件中后,执行
kubectl apply-f


查看更多信息:

在本书中,使用的命令是
kubectl run kubia--image=luksa/kubia--port=8080--generator=run/v1
,该命令在编写本书时用于创建
ReplicationController
,但该对象当前已被取消权限

现在
kubectl run
命令将创建不带ReplicationController的独立pod。因此,要公开它,您应该运行:

kubectl expose pod kubia --type=LoadBalancer --name kubia-http
为了创建复制,建议使用
部署
。要使用CLI创建它,只需运行

kubectl create deployment <name_of_deployment> --image=<image_to_be_used>
我建议您创建一个in-YAML语法,将其与其他部署工件一起检入,并使用
kubectl apply-f kubia service.yml安装它;避免像
kubectl expose
这样的命令(在您正在阅读的教程中,
服务“kubia http”expose
应该是
kubectl expose
命令的输出吗?删除这些单词有帮助吗?)
kubectl expose deployment kubia --type=LoadBalancer --name kubia-http