AWS 503 服务暂时不可用
AWS 503 Service Temporarily Unavailable
我的前端连接到托管在 AWS 中的服务器,从昨天开始我收到 503 Service Temporarily Unavailable 错误。
在 chrome 控制台中我有 2 个错误:
1 :
http://myServerendpoint.com/getData 503 (Service Temporarily Unavailable)
2 :
Failed to load http://myServerendpoint.com/getData : No 'Access-Control-Allow-Origin' header is present on the requested resource. Origin 'http://myFrontEndPoint.com' is therefore not allowed access. The response had HTTP status code 503.
我已经将 cors 应用到服务器(它是 nodejs):
app.use(cors({
allowedOrigin: ["*"],
credentials: true
}))
它一直工作到昨天。但从昨天开始,我一直收到这个错误并且毫无头绪。在 aws 日志中我得到这个:
container_linux.go:247: starting container process caused “exec: \“/usr/bin/node\“: stat /usr/bin/node: no such file or directory”
知道哪里出了问题吗?
更新:
路径错误我将其更改为更正 /usr/bin/node 但现在我收到权限被拒绝的错误:
container_linux.go:247: starting container process caused "exec: \"/usr/bin/node\": permission denied"
我的 docker 文件:
FROM node:6-onbuild
RUN apt-get update && \
apt-get -y install sudo
RUN mkdir -p /usr/bin/node
RUN chmod -R +x /usr/bin/node
RUN sudo chown -R $USER: /usr/bin/node
WORKDIR /usr/bin/node
COPY package.json /usr/bin/node
RUN npm install
COPY . /usr/bin/node
ENV PORT 80
EXPOSE ${PORT}
CMD [ "npm","run", "start" ]
新更新:
即使在使用 buildkite 构建之后,duckerfile 配置 运行 也很好:
Removing intermediate container eac44b8f2a3f
Step 3/12 : RUN mkdir -p /usr/bin/node
---> Running in 9ac2ac7f960e
---> 970134252f9d
Removing intermediate container 9ac2ac7f960e
Step 4/12 : RUN chmod -R +x /usr/bin/node
---> Running in 8c54b0e3d813
---> 5ca0fe8180f6
Removing intermediate container 8c54b0e3d813
...
...
...
Successfully built 7f189f7e38cc
Successfully tagged 239820024964.dkr.ecr.ap......
所以问题不在构建之前,而是在构建之后,当我们发送一个 http 请求时,我们得到了这个权限被拒绝!
我们发现了问题,如果有人需要,在我的例子中,我们的 ecs 任务 EntryPoint 有一个不同的节点路径,基本上我们的 docker 节点路径位于:/usr/local/bin/node 但是我们的 ecs 任务入口点设置为 /usr/bin/node
我的前端连接到托管在 AWS 中的服务器,从昨天开始我收到 503 Service Temporarily Unavailable 错误。
在 chrome 控制台中我有 2 个错误:
1 :
http://myServerendpoint.com/getData 503 (Service Temporarily Unavailable)
2 :
Failed to load http://myServerendpoint.com/getData : No 'Access-Control-Allow-Origin' header is present on the requested resource. Origin 'http://myFrontEndPoint.com' is therefore not allowed access. The response had HTTP status code 503.
我已经将 cors 应用到服务器(它是 nodejs):
app.use(cors({
allowedOrigin: ["*"],
credentials: true
}))
它一直工作到昨天。但从昨天开始,我一直收到这个错误并且毫无头绪。在 aws 日志中我得到这个:
container_linux.go:247: starting container process caused “exec: \“/usr/bin/node\“: stat /usr/bin/node: no such file or directory”
知道哪里出了问题吗?
更新:
路径错误我将其更改为更正 /usr/bin/node 但现在我收到权限被拒绝的错误:
container_linux.go:247: starting container process caused "exec: \"/usr/bin/node\": permission denied"
我的 docker 文件:
FROM node:6-onbuild
RUN apt-get update && \
apt-get -y install sudo
RUN mkdir -p /usr/bin/node
RUN chmod -R +x /usr/bin/node
RUN sudo chown -R $USER: /usr/bin/node
WORKDIR /usr/bin/node
COPY package.json /usr/bin/node
RUN npm install
COPY . /usr/bin/node
ENV PORT 80
EXPOSE ${PORT}
CMD [ "npm","run", "start" ]
新更新:
即使在使用 buildkite 构建之后,duckerfile 配置 运行 也很好:
Removing intermediate container eac44b8f2a3f
Step 3/12 : RUN mkdir -p /usr/bin/node
---> Running in 9ac2ac7f960e
---> 970134252f9d
Removing intermediate container 9ac2ac7f960e
Step 4/12 : RUN chmod -R +x /usr/bin/node
---> Running in 8c54b0e3d813
---> 5ca0fe8180f6
Removing intermediate container 8c54b0e3d813
...
...
...
Successfully built 7f189f7e38cc
Successfully tagged 239820024964.dkr.ecr.ap......
所以问题不在构建之前,而是在构建之后,当我们发送一个 http 请求时,我们得到了这个权限被拒绝!
我们发现了问题,如果有人需要,在我的例子中,我们的 ecs 任务 EntryPoint 有一个不同的节点路径,基本上我们的 docker 节点路径位于:/usr/local/bin/node 但是我们的 ecs 任务入口点设置为 /usr/bin/node