我尝试用Couchbase实现Spring Boot的示例。实施Docker流程后,我通过了Kubernetes。
我在启动Minikube并打开仪表板后运行kubectl apply -f k8s
命令时会有一些问题。 couchbase抛出了下面所示的这个问题
Failed to pull image "couchbase:latest": rpc error: code = Unknown desc = context deadline exceeded
该应用程序名为TodowithCouchbase抛出了下面所示的此问题
Failed to pull image "noyandocker/todowithcouchbase:latest": rpc error: code = Unknown desc = context deadline exceeded
可以通过此
链接获得Docker映像这里是下面显示的代码
apiVersion: v1
kind: ConfigMap
metadata:
name: app-config
data:
COUCHBASE_BUCKET: "todo_list"
COUCHBASE_HOST: "couchbase"
2)couchbase-pv.yml
apiVersion: v1
kind: PersistentVolume
metadata:
name: couchbase-pv
spec:
capacity:
storage: 5Gi
accessModes:
- ReadWriteOnce
hostPath:
path: /mnt/data/couchbase
---
apiVersion: v1
kind: PersistentVolumeClaim
metadata:
name: couchbase-pvc
spec:
accessModes:
- ReadWriteOnce
resources:
requests:
storage: 5Gi
3)couchbase-secret.yml
apiVersion: v1
kind: Secret
metadata:
name: couchbase-secret
type: Opaque
data:
username: QWRtaW5pc3RyYXRvcg== # Base64 of 'Administrator'
password: MTIzNDU2 # Base64 of '123456'
4)couchbase-secret.yml
apiVersion: apps/v1
kind: StatefulSet
metadata:
name: couchbase
spec:
selector:
matchLabels:
app: couchbase
serviceName: couchbase
replicas: 1
template:
metadata:
labels:
app: couchbase
spec:
containers:
- name: couchbase
image: couchbase:latest
ports:
- containerPort: 8091
- containerPort: 11210
env:
- name: COUCHBASE_ADMINISTRATOR_USERNAME
valueFrom:
secretKeyRef:
name: couchbase-secret
key: username
- name: COUCHBASE_ADMINISTRATOR_PASSWORD
valueFrom:
secretKeyRef:
name: couchbase-secret
key: password
- name: COUCHBASE_BUCKET
valueFrom:
configMapKeyRef:
name: app-config
key: COUCHBASE_BUCKET
volumeMounts:
- name: couchbase-storage
mountPath: /opt/couchbase/var
volumes:
- name: couchbase-storage
persistentVolumeClaim:
claimName: couchbase-pvc
---
apiVersion: v1
kind: Service
metadata:
name: couchbase-service
spec:
selector:
app: couchbase
ports:
- name: admin-port
protocol: TCP
port: 8091
targetPort: 8091
- name: data-port
protocol: TCP
port: 11210
targetPort: 11210
type: NodePort
5)todowithCouchbase-Deployment.yml
apiVersion: apps/v1
kind: Deployment
metadata:
name: todowithcouchbase
spec:
replicas: 1
selector:
matchLabels:
app: todowithcouchbase
template:
metadata:
labels:
app: todowithcouchbase
spec:
containers:
- name: todowithcouchbase
image: noyandocker/todowithcouchbase:latest
ports:
- containerPort: 2323
envFrom:
- configMapRef:
name: app-config
- secretRef:
name: couchbase-secret
---
apiVersion: v1
kind: Service
metadata:
name: todowithcouchbase-service
spec:
selector:
app: todowithcouchbase
ports:
- protocol: TCP
port: 2323
targetPort: 2323
type: NodePort
我怎么可以解决这个问题? Repo链接是:
link