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:无法部署简单的;Couchbase“;服务_Kubernetes_Docker Compose - Fatal编程技术网

Kubernetes:无法部署简单的;Couchbase“;服务

Kubernetes:无法部署简单的;Couchbase“;服务,kubernetes,docker-compose,Kubernetes,Docker Compose,我是Kubernetes的新手,我试图模仿一种行为,有点像我在docker容器中为Couchbase数据库提供服务时使用的docker compose couchbase: 图片:couchbase 卷数: -./couchbase:/opt/couchbase/var 端口: - 8091-8096:8091-8096 - 11210-11211:11210-11211 我使用名为“”的工具在本地主机中创建了群集 kind创建集群——命名我的集群 kubectl配置使用上下文我的集群 然后

我是Kubernetes的新手,我试图模仿一种行为,有点像我在docker容器中为Couchbase数据库提供服务时使用的
docker compose

couchbase:
图片:couchbase
卷数:
-./couchbase:/opt/couchbase/var
端口:
- 8091-8096:8091-8096
- 11210-11211:11210-11211
我使用名为“”的工具在本地主机中创建了群集

kind创建集群——命名我的集群
kubectl配置使用上下文我的集群
然后我尝试使用该集群部署Couchbase服务

我创建了一个名为
couchbase.yaml
的文件,其中包含以下内容(我试图模仿我使用docker compose文件所做的操作)

apiVersion:apps/v1 种类:部署 元数据: 名称:couchbase 名称空间:我的项目 标签: 平台:couchbase 规格: 副本:1份 选择器: 火柴标签: 平台:couchbase 模板: 元数据: 标签: 平台:couchbase 规格: 卷数: -名称:couchbase数据 主机路径: #主机上的目录位置 路径:/home/me/my project/couchbase #此字段是可选的 类型:目录 容器: -名称:couchbase 图片:couchbase 体积数量: -挂载路径:/opt/couchbase/var 名称:couchbase数据 然后我像这样开始部署:

kubectl创建名称空间我的项目
kubectl应用程序-f couchbase.yaml
kubectl公开部署-n我的项目couchbase--type=LoadBalancer--port=8091
但是,我的部署从未真正开始:

kubectl获取部署-n我的项目couchbase
姓名就绪最新可用年龄
沙发床0/1016M14S
当我查找日志时,我看到:

kubectl日志-n我的项目-lpplatform=couchbase--all containers=true
服务器错误(BadRequest):pod“couchbase-589f7fc4c7-th2r2”中的容器“couchbase”正在等待启动:ContainerCreating

正如OP在评论中提到的,问题是通过使用额外装载解决的,如文档中所述:

以下是OP的评论,但格式已格式化,因此更具可读性:


运行此命令时会显示错误:

kubectl describe pods -n my-project couchbase
我可以通过创建一种新的群集来修复它:

kind create cluster --config cluster.yaml 
cluster.yaml中传递此内容:

kind: Cluster
apiVersion: kind.x-k8s.io/v1alpha4
name: inf
nodes:
- role: control-plane
  extraMounts:
  - hostPath: /home/me/my-project/couchbase
    containerPath: /couchbase

couchbase.yaml
中,路径变为路径:
/couchbase
当然。

工具类型基于Docker映像,这些映像创建了Kubernetes运行的自己的文件系统层。因此,您不能在部署中引用计算机上的本地路径,因为Kubernetes无法访问这些路径。也许有一个逃避的窍门,也许这个评论对你有帮助。试试看。是的,你是对的:只是为了完成你的回答:当我运行这个命令时会出现错误:
kubectl descripe pods-n
我可以通过创建一个新的种类集群来修复它:
kind create cluster--config cluster.yaml
在集群中传递这个内容。yaml:
yaml种类:集群apiVersion:kind.x-k8s.io/v1alpha4 name:inf节点:-角色:控制平面附加:-主机路径:/home/me/my project/couchbase containerPath:/couchbase
在couchbase.yaml中,路径当然变成
path:/couchbase