【问题标题】:How to write correct yaml for deploying kubernetes cluster in Azure devops?如何编写正确的 yaml 以在 Azure devops 中部署 kubernetes 集群?
【发布时间】:2021-04-15 17:07:18
【问题描述】:

我正在尝试使用 kubernetes 在 Azure 云中建立 Dockerized Angular 应用程序,但我不能这样做。一切看起来都很好,但是当我进入时我看不到角度应用程序 浏览器上的网址。我的 Dockerfile 或 yml 文件有什么问题?你能给我一些建议吗?我在 2 天内进行了大量搜索,但没有找到解决方案。

deployment.yml:


apiVersion: apps/v1
kind: Deployment
metadata:
  labels:
    app: xxx-pod
  name: xxx-deployment
spec:
  replicas: 5
  selector:
    matchLabels:
      app: xxx-pod
  strategy: {}
  template:
    metadata:
     labels:
        app: xxx-pod
    spec:
      containers:
      - image: xxx.azurecr.io/cm-webui:v1
        name: webapp
        imagePullPolicy: Always
        resources: {}
        ports:
          - containerPort: 3080 
status: {}

service.yml:


apiVersion: v1
kind: Service
metadata:
  name: xxx-service
  labels:
    run: xxx-pod
spec:
  selector:
    app: xxx-pod
  ports:
  - port: 3080
    targetPort: 80
  type: LoadBalancer

Dockerfile:


FROM node:10 AS ui-build
WORKDIR /usr/src/app
COPY my-app/ ./my-app/
RUN cd my-app && npm install @angular/cli && npm install && npm run build

FROM node:10 AS server-build
WORKDIR /root/
COPY --from=ui-build /usr/src/app/my-app/dist ./my-app/dist
COPY package*.json ./
RUN npm install
COPY server.js .

EXPOSE 3080

CMD ["node", "server.js"]

我的日志:


8m13s       Normal    EnsuredLoadBalancer            service/xxx-service                    Ensured load balancer
8m17s       Warning   FailedToUpdateEndpoint         endpoints/xxx-service                  Failed to update endpoint default/xxx-service: Operation cannot be fulfilled on endpoints "xxx-service": the object has been modified; please apply your changes to the latest version and try again
8m17s       Warning   FailedToUpdateEndpointSlices   service/xxx-service                    Error updating Endpoint Slices for Service default/xxx-service: failed to update xxx-service-p429q EndpointSlice for Service default/xxx-service: Operation cannot be fulfilled on endpointslices.discovery.k8s.io "xxx-service-p429q": the object has been modified; please apply your changes to the latest version and try again

【问题讨论】:

  • 这是 Kubernetes 问题,而不是 Azure DevOps 问题。请提供有关您的 Kubernetes 集群的更多详细信息。它在哪里托管?入口是如何配置的?您是否能够让任何工作负载正常工作?以此类推。

标签: angular azure docker kubernetes azure-devops


【解决方案1】:

在服务定义中,您交换了 porttargetPort 值。 port 应该是 80 和 targetPort 3080。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-11-16
    • 2019-05-19
    • 2023-02-21
    • 1970-01-01
    相关资源
    最近更新 更多