问题描述
我正在ECS中运行React App.Docker镜像已创建并通过jenkins管道推送到ECR.ECS容器通过terraform代码创建。但是容器以代码0退出并开始新的容器。这成为一个循环。当我尝试使用同一图像中的命令手动创建容器时,该容器将保持活动状态。当ECS EC2中使用相同的映像时,将创建并退出容器。 当我从Cloud Watch查看日志时,我得到的日志为 来自webpack的内容由/ app / public提供 404将回退到/
enter code here
FROM node:13.12.0-alpine
# set working directory
WORKDIR /app
# add `/app/node_modules/.bin` to $PATH
ENV PATH /app/node_modules/.bin:$PATH
# install app dependencies
COPY package.json ./
COPY package-lock.json ./
RUN npm install --silent
RUN npm install react-scripts@3.4.1 -g --silent
# add app
COPY . ./
# start app
ENTRYPOINT ["npm","start"]
解决方法
请添加(在docker-compose中使用)
stdin_open: true
tty: true
因为容器以退出代码0退出。
这等效于使用-it
选项运行容器。
对于 ECS ,它应该像
在任务配置中,单击“通过JSON配置”按钮。将pseudoTerminal属性更改为true。 "pseudoTerminal": true