Я пытаюсь запустить образы Docker из gitlab-registry в Google Kubernetes Engine в кластере и получить поток трафика через контроллер ingress nginx.Я не могу этого достичь.Вот правильное объяснение.Я строю конвейер, используя gitlab ci / cd, и каждый раз, когда конвейер работает успешно, он помещает образ докера в реестр gitlab.Теперь я хочу проверить, какие изображения хранятся в реестре gitlab.Мне нужно вытащить их и запустить контейнеры из этих образов в кластере kubernetes в Google Kubernetes Engine.Я пробовал много способов, но продолжают появляться ошибки.например: /built_app/programs/server/node_modules/fibers/future.js:313
throw(ex);
^
MongoError: failed to connect to server [cluster1-shard-00-02-iqf6c.mongodb.net:27017] on first connect [MongoError: connection 5 to cluster1-shard-00-02-iqf6c.mongodb.net:27017 timed out]
at Pool.<anonymous> (/built_app/programs/server/npm/node_modules/meteor/npm-mongo/node_modules/mongodb-core/lib/topologies/server.js:336:35)
at emitOne (events.js:116:13)
at Pool.emit (events.js:211:7)
at Connection.<anonymous> (/built_app/programs/server/npm/node_modules/meteor/npm-mongo/node_modules/mongodb-core/lib/connection/pool.js:280:12)
at Object.onceWrapper (events.js:317:30)
at emitTwo (events.js:126:13)
at Connection.emit (events.js:214:7)
at TLSSocket.<anonymous> (/built_app/programs/server/npm/node_modules/meteor/npm-mongo/node_modules/mongodb-core/lib/connection/connection.js:199:10)
at Object.onceWrapper (events.js:313:30)
Я попытался установить переменные среды как секрет в кластере kubernetes и использовал их.а также я создал еще один секрет, чтобы использовать его для извлечения изображений из частного реестра gitlab.
У меня также есть настройка Nginx-ingress-controller от gitlab, в то время как кластер kubernetes интегрирован с Gitlab.
Я хочу подключить и проверить эти образы докеров из Интернета, используя Ingress и GKE.Я застрял здесь без какой-либо идеи.Любая помощь будет полезна для начинающего, как я.
У меня есть кластер kubernetes, интегрированный с gitlab CI, и эта интеграция уже установила некоторые приложения, такие как ingress-nginx-controller, gitlab-runner и другие, в мой кластер в GKE.
Здесь яПрикрепление файлов YAML, используемых в GKE.
apiVersion: apps/v1
kind: Deployment
metadata:
name: deployment-one
namespace: gitlab-managed-apps
labels:
app: myapp
spec:
replicas: 1
selector:
matchLabels:
app: myapp
template:
metadata:
labels:
app: myapp
spec:
containers:
- name: mycontainer
image: my-image-from-private-gitlab-registry
ports:
- containerPort: 80
env:
- name: MONGO_URL
valueFrom:
secretKeyRef:
name: envisec
key: MONGO_URL
- name: ROOT_URL
valueFrom:
secretKeyRef:
name: envisec
key: ROOT_URL
- name: PORT
valueFrom:
secretKeyRef:
name: envisec
key: PORT
ports:
- containerPort: 80
imagePullSecrets:
- name: myreg
---
apiVersion: v1
kind: Service
metadata:
name: myapp-service
namespace: gitlab-managed-apps
labels:
app : myapp
spec:
type: LoadBalancer
ports:
- port: 80
protocol: TCP
selector:
app: myapp
---
apiVersion: extensions/v1beta1
kind: Ingress
metadata:
name: myapp-ingress
namespace: gitlab-managed-apps
spec:
rules:
- http:
paths:
- path: /hello
backend:
serviceName: myapp-service
servicePort: 80
Это файлы yaml, которые я использовал.Используемый нами mongodb размещен на другом сервисе.Соединение не устанавливается с mongoDB, и я застрял здесь.Я застрял, и любая помощь будет оценена ..