# 对应文档:docs/04-02-nodejs-镜像与运行命令.md # 累积:04-01 + 固定镜像 tag、imagePullPolicy、command/args apiVersion: apps/v1 kind: Deployment metadata: name: nodejs-demo namespace: default spec: replicas: 1 selector: matchLabels: app: nodejs-demo template: metadata: labels: app: nodejs-demo spec: containers: - name: nodejs-demo image: node:18.20-alpine imagePullPolicy: IfNotPresent command: ["node"] args: - "-e" - "require('http').createServer((req,res)=>res.end('Hello from pinned image')).listen(3000)" ports: - containerPort: 3000 --- apiVersion: v1 kind: Service metadata: name: nodejs-demo namespace: default spec: selector: app: nodejs-demo ports: - port: 80 targetPort: 3000 --- apiVersion: networking.k8s.io/v1 kind: Ingress metadata: name: nodejs-demo namespace: default annotations: traefik.ingress.kubernetes.io/router.entrypoints: web spec: rules: - http: paths: - path: /node pathType: Prefix backend: service: name: nodejs-demo port: number: 80