我正在尝试在端口 8080
上运行一个简单的节点服务器,但是使用以下配置,任何尝试访问子域的尝试都会导致 502 Bad Gateway
错误。如果我去节点,我可以看到容器本身似乎没有打开任何端口。那么,假设我已经正确检查了所有内容,我还需要在配置中做些什么来打开节点服务器的端口?
编辑:如果我通过 ssh 进入 pod 和 curl
上的 8080
localhost,我可以访问节点服务器。
Dockerfile
FROM node:12.18.1
WORKDIR /app
COPY ["package.json", "package-lock.json*", "./"]
RUN npm install
COPY . .
RUN npm run build
EXPOSE 8080
CMD [ "node", "server.js" ]
k8s 部署
spec:
containers:
- name: test
image: test_image
ports:
- name: http
protocol: TCP
containerPort: 8080
服务 yaml
apiVersion: v1
kind: Service
metadata:
name: test-service
spec:
ports:
- name: http
port: 80
targetPort: 8080
protocol: TCP
- name: https
port: 443
targetPort: 8080
protocol: TCP
selector:
app: test-deployment
type: NodePort
externalTrafficPolicy: Cluster
入口
spec:
rules:
- host: dev.test.com
http:
paths:
- backend:
serviceName: test-service
servicePort: 80
path: /