Я новичок в kubernetes и попытался запустить небольшое приложение, используя kubernetes. Я создал образ докера и использовал миникуб для его запуска. Таким образом, приложение очень просто, оно просто печатает hello-world.
@RestController
@RequestMapping(value = "helloworld")
public class MyController {
@GetMapping
public HelloWord helloWord(){
return new HelloWord("Hello Word");
}
}
Мой dockerfile:
FROM adoptopenjdk/openjdk11-openj9:jdk-11.0.1.13-alpine-slim
VOLUME /tmp
ARG JAR_FILE=target/myapp-1.0.0.jar
COPY ${JAR_FILE} myapp-1.0.0.jar
ENTRYPOINT ["java","-Djava.security.egd=file:/dev/./urandom", "-jar","/myapp-1.0.0.jar"]
deploy.yaml
apiVersion: v1
kind: Service
metadata:
name: myhelloworldservice
spec:
selector:
app: my-hello-world-app
ports:
- protocol: "TCP"
port: 8080
targetPort: 80
nodePort: 30003
type: LoadBalancer
---
apiVersion: apps/v1
kind: Deployment
metadata:
name: my-hello-world
spec:
selector:
matchLabels:
app: my-hello-world-app
replicas: 5
template:
metadata:
labels:
app: my-hello-world-app
spec:
containers:
- name: hello-world
image: myname/myhelloimage
ports:
- containerPort: 80
Я запускаю команду:
kubectl create -f deploy.yaml
и вывод:
service / myhelloworldservice создан
создал deploy.apps / my-hello-world
Я запустил команду ip minikube, чтобы получить ip, а затем использовал этот IP-адрес для доступа к моему приложению через порт 30003, но не смог получить доступ к моему приложению.
Я использовал:
http://xxx.xx.xx.xxx:30003/helloworld
В чем проблема, почему я не могу получить доступ к своему приложению? Я получаю Этот сайт не может быть достигнуто. Отказ в соединении ошибка.