![](/img/trans.png)
[英]Getting Connection refused while trying to access service from kubernetes pod
[英]Getting connection refused from kubernetes pod open port
我是 kubernetes 的新手,我正在嘗試將帶有 Gitlab 管道的 MEAN 堆棧應用程序部署到 Google Cloud 中的 Kubernetes 引擎。 但是,我無法讓它連接到在開放端口(4200)上運行我的代碼的 pod。 您可以在下面找到我的 YAML 配置。 Dockerfile
FROM node:13.13-alpine
RUN mkdir -p /usr/src/app
COPY . /usr/src/app
WORKDIR /usr/src/app
RUN cd /usr/src/app && npm install @angular/core@9.1.4 @angular/animations@9.1.4 @angular/common@9.1.4 @angular/forms@9.1.4 @angular/platform-browser@9.1.4 @angular/router@9.1.4 @angular/platform-browser-dynamic@9.1.4 @angular/compiler@9.1.4 @angular/compiler-cli@9.1.4 @angular/language-service@9.1.4 && npm install && npm run-script build
EXPOSE 3000 4200
CMD ["npm","run-script","start"]
Gitlab-ci.yml
deploy service:
stage: deploy_kubernetes
image: google/cloud-sdk:latest
script:
# Auth and GC Cluster configs
- echo $GKE_SERVICE_KEY | base64 -d > service-account.json
- gcloud auth activate-service-account --key-file service-account.json
- gcloud container clusters get-credentials $GKE_cluster_name --zone $GKE_zone --project $GKE_project_id
# Kompose to build deployment files
- curl -L https://github.com/kubernetes/kompose/releases/download/v1.19.0/kompose-linux-amd64 -o kompose
- chmod +x kompose
- mv ./kompose /usr/local/bin/kompose
- kompose convert -f deploy/docker-compose-stack.yml
# Kompose patches and service creating in Kubernetes
- kubectl apply -f mean-deployment.yaml,mean-service.yaml
- echo $PATCH_LOAD_BALANCER | base64 -d > patch_load_balancer.json
- kubectl patch svc mean --patch "$(cat patch_load_balancer.json)"
docker-compose-stack.yml
version: "3.7"
services:
mean:
image: theycallmefox/gp_ips:latest
ports:
- 3000:3000
- 4200:4200
運行kubectl get svc --all-namespaces得到以下 output:
NAMESPACE NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE
default kubernetes ClusterIP 10.0.0.1 <none> 443/TCP 3d
default mean LoadBalancer 10.0.12.199 34.91.94.183 443:31324/TCP,80:32732/TCP,3000:32577/TCP,4200:32512/TCP 2d2h
kube-system default-http-backend NodePort 10.0.4.122 <none> 80:32038/TCP 2d23h
kube-system kube-dns ClusterIP 10.0.0.10 <none> 53/UDP,53/TCP 2d23h
kube-system metrics-server ClusterIP 10.0.1.220 <none> 443/TCP 2d23h
最后,運行kubectl logs -f mean-6cb9949f77-kbz95
> portal-ips@0.0.0 start /usr/src/app
> ng serve && cd ../backend && node app.js
chunk {main} main.js, main.js.map (main) 412 kB [initial] [rendered]
chunk {polyfills} polyfills.js, polyfills.js.map (polyfills) 141 kB [initial] [rendered]
chunk {runtime} runtime.js, runtime.js.map (runtime) 6.15 kB [entry] [rendered]
chunk {scripts} scripts.js, scripts.js.map (scripts) 219 kB [entry] [rendered]
chunk {styles} styles.js, styles.js.map (styles) 1.12 MB [initial] [rendered]
chunk {vendor} vendor.js, vendor.js.map (vendor) 5.6 MB [initial] [rendered]
Date: 2020-05-24T17:50:28.305Z - Hash: a02a05a0d81f690bca61 - Time: 35281ms
** Angular Live Development Server is listening on localhost:4200, open your browser on http://localhost:4200/ **
: Compiled successfully.
有任何想法嗎? 謝謝。
您的應用程序正在偵聽 localhost,而您的負載均衡器將流量轉發到以太網網絡接口。
您將需要更改您的應用程序並使其在0.0.0.0
上提供服務。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.