Вот образ моих сервисов Kubernetes.
![My kubernetes services](https://i.stack.imgur.com/XHZk1.png)
Todo-front-2 - это рабочий экземпляр моего приложения, который я развернул с помощью командной строки:
kubectl run todo-front --image=todo-front:v7 --image-pull-policy=Never
kubectl expose deployment todo-front --type=NodePort --port=3000
И это прекрасно работает. Теперь я хочу перейти и использовать файл todo-front.yaml для развертывания и предоставления моего сервиса. Сервис Todo-front относится к моей текущей попытке. Мой файл развертывания выглядит следующим образом:
kind: Deployment
apiVersion: apps/v1
metadata:
name: todo-front
spec:
replicas: 1
selector:
matchLabels:
app: todo-front
template:
metadata:
labels:
app: todo-front
spec:
containers:
- name: todo-front
image: todo-front:v7
env:
- name: REACT_APP_API_ROOT
value: "http://localhost:12000"
imagePullPolicy: Never
ports:
- containerPort: 3000
---
kind: Service
apiVersion: v1
metadata:
name: todo-front
spec:
type: NodePort
ports:
- port: 3000
targetPort: 3000
selector:
app: todo-front
Я развертываю его, используя:
kubectl apply -f deployment/todo-front.yaml
Вот вывод
![Output for deploying app](https://i.stack.imgur.com/j5NBS.png)
Но когда я запускаю
minikube service todo-front
, он перенаправляет меня на URL, говорящий "Сайт не может быть достигнут". Я не могу понять, что я делаю неправильно. Порты должны быть в порядке, и мой кластер должен быть в порядке, так как я могу заставить его работать, используя только командную строку без внешних файлов YAML. Оба развертывания также используют один и тот же docker -изображение. Я также попытался изменить все порты, теперь "3000", на что-то другое, в случае, если они имеют sh с существующим развертыванием todo-front-2, не повезло. Вот также скриншот модулей и их статуса:
![enter image description here](https://i.stack.imgur.com/JzNFG.png)
Кто-нибудь с большим опытом работы с Kube и Docker хочет взглянуть? Спасибо!