node.js - AWS Fargate 服务中的“导致执行用户进程:执行格式错误”
问题描述
我对 AWS 完全陌生,但几个月来我一直在本地运行我的 dockerized 应用程序,没有任何问题。现在我正在尝试通过 AWS ECS/Fargate 部署此应用程序,我的容器因以下 linux 错误而反复停止:standard_init_linux.go:219: exec user process caused: exec format error
. 此错误似乎表明 Fargate 中的架构无法识别我正在运行的 Linux 命令之一,但我无法在任何地方找到关于如何找到正在运行的架构或如何追踪导致的特定命令的好答案问题。
这些是我用于前端和后端的 Dockerfile。该项目构建在 MERN 堆栈中,分为前端 (React) 和后端 (MongoDB/Express)
前端:
FROM alpine:3.10
ENV NODE_VERSION 15.9.0
WORKDIR /frontend
COPY package*.json ./
RUN apk add --no-cache nodejs npm
# some packages rely on gyp so we need this
# pulled from https://github.com/nodejs/docker-node/issues/282
RUN apk add --no-cache --virtual .gyp \
python \
make \
g++ \
&& npm install
COPY . .
EXPOSE 3000
CMD ["npm", "start"]
后端:
FROM alpine:3.10
ENV NODE_VERSION 15.9.0
WORKDIR /backend
COPY package*.json ./
RUN apk add --no-cache nodejs npm
# some packages rely on gyp so we need this
# pulled from https://github.com/nodejs/docker-node/issues/282
RUN apk add --no-cache --virtual .gyp \
python \
make \
g++ \
&& npm install --silent\
&& apk del .gyp
COPY ./ ./
EXPOSE 8080
CMD ["npm", "start"]
任何帮助将不胜感激!
解决方案
简短的回答:
docker buildx build --platform=linux/amd64 -t <image-name> .
推荐阅读
- python - Python Setuptools 和 PBR - 如何使用 git 标签作为版本创建包发布?
- java - 搜索后导航栏没有进入最后一个位置
- python - pi 不会从 MCP3424 读取值
- react-native - 如何使用 React Native 获取实时数据
- excel - 将行追加到 CSV 文件 (VBA)
- sql-server - 将来自多个不同 RDBMS 系统的数据整合到可查询数据库中的最直接方法
- mongodb - 寻求建议以创建我的第一个神经网络来对文本进行分类
- python - Kivy 中的状态处理
- r - 从实验结果中回归或去除年龄作为混杂因素
- mysql - MYSql 使用 HQL 从子查询中计算总金额