问题描述
我在 Github 上构建了我的 docker 镜像,一次用于三种架构。对于后端,我不得不通过箍,而不是使用 node:latest,使用 ubuntu:latest 以便我可以使用 glibc >= 2.29。但是,似乎启动构建该文件时安装的任何东西 - 所以 npm 或 nodejs - 将导致图像在 armv7 上崩溃,同时在 x86_64 上工作:
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android" android:shape="rectangle" >
<corners
android:topLeftRadius="100dp"
android:topRightRadius="0dp"
android:bottomLeftRadius="0dp"
android:bottomRightRadius="100dp"
/>
<gradient
android:angle="45"
android:centerX="35%"
android:centerColor="#00A2A8"
android:startColor="#E8E8E8"
android:endColor="#000000"
android:type="linear"
/>
<padding
android:left="0dp"
android:top="0dp"
android:right="0dp"
android:bottom="0dp"
/>
<size
android:width="270dp"
android:height="60dp"
/>
<stroke
android:width="3dp"
android:color="#878787"
/>
</shape>
这是 Dockerfile:
backend_1 | #
backend_1 | # Fatal error in,line 0
backend_1 | # unreachable code
backend_1 | #
backend_1 | #
backend_1 | #
backend_1 | #FailureMessage Object: 0xbecf23ecIllegal instruction (core dumped)
以及相关操作:
FROM ubuntu:latest
ENV DEBIAN_FRONTEND=noninteractive
RUN apt update
RUN apt install nodejs npm -y
RUN apt install ca-certificates -y
RUN update-ca-certificates --fresh
RUN npm install -g npm@latest
WORKDIR /code
EXPOSE 4000
COPY package*.json ./
RUN npm i
COPY . .
VOLUME /code/media
CMD "npm" "start"
我认为问题是在使用 QEMU 操作时使用 apt?如果有解决办法,我很乐意接受。如果有一种方法可以在不使用 apt 的情况下同时获得 node/npm 和 glibc >= 2.29,那么我对这个解决方案也很满意。
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)