gpt4 book ai didi

node.js - 使用 Docker 通过 kubernetes 部署 React 应用程序

转载 作者:行者123 更新时间:2023-12-03 12:17:43 25 4
gpt4 key购买 nike

晚上好,首先,如果我不尊重 StackOverflow 的所有代码,我深表歉意,这是我第一次发布我的问题。

对于一个项目,我开发了一个带有 Node 服务器和 React 客户端的应用程序,但在 Kubernetes 上部署 React 时遇到了一些问题。

经过多次研究,我了解到为了使用 React docker,我必须使用标志 -it 以交互模式启动 docker。所以这里是我用来对接前端的查询。

docker build -t front-end .   
docker run -it -p 3000:3000 -d front-end

这是 dockerfile。

FROM node:12-slim

ENV NODE_ENV production

WORKDIR /usr/src/app/front-end

COPY ./package.json ./

RUN npm install

COPY . .

EXPOSE 3000

CMD ["npm", "start"]

在 docker 应用程序上,此设置工作正常。但是我在使用 Kubernetes 时遇到了一些问题。我无法在交互模式下使用容器启动 pod,我尝试了几种方法,但这是我的最后一种方法:

apiVersion: apps/v1
kind: Deployment
metadata:
name: front
spec:
replicas: 1
selector:
matchLabels:
app: webapps-front-test
version: v01
template:
metadata:
labels:
app: webapps-front-test
version: v01
spec:
volumes:
containers:
- name: front
image: myRep/do_front
stdin: true
tty: true
ports:
- containerPort: 3000
args:
- "-it"

编辑:这发生在 kubernetes 上:

kubectl get pods                                                                                                                                  
NAME READY STATUS RESTARTS AGE
front-76998f6794-xx 0/1 CrashLoopBackOff 11 33m

当我在 docker 上运行时会发生这种情况(这不是问题,因为使用 -it)

> react-scripts start


ℹ 「wds」: Project is running at http://1xx.x.x.x/

ℹ 「wds」: webpack output is served from

ℹ 「wds」: Content not from webpack is served from /usr/src/app/front-end/public

ℹ 「wds」: 404s will fallback to /

你知道如何解决这个问题吗?谢谢,晚上好/白天好

最佳答案

-i-tdocker run 的特定选项;它们对应于 stdin_open: truetty: true Kubernetes pod 设置。您不需要在 args: 中重复它们。

Kubernetes args: 设置实际上替换了 Dockerfile 中的 CMD(有点令人困惑,Kubernetes command: 替换了 Docker ENTRYPOINT),所以当您提供 args: ['-it'] 时,您实际上是在覆盖容器试图运行的命令。如果在 docker run 命令中错误地将 -it 选项放在图像名称之后而不是之前,您应该会看到相同的错误。

stdin: true  # docker run -i
tty: true # docker run -t
# args: ... # docker run <image-name> arg1 arg2

关于node.js - 使用 Docker 通过 kubernetes 部署 React 应用程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/65416280/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com