What I'd like to do
I wanted to run Rocket Chat in a Docker container on an Arm version instance. I actually have a Dckerfile on Github that downloads and builds the source code for Arm, so if you are in a hurry, here it is github
The key points are,
RUN npm install \
&& npm install --arch=${ARCH} --force
RUN cd /tmp/bundle/programs/server \
&& rm -rf npm/node_modules/sharp \
&& npm install --platform=linux --arch=arm64v8 sharp \
&& mv node_modules/sharp npm/node_modules/sharp
RUN cd /tmp/bundle/programs/server \
&& rm -rf npm/node_modules/bcrypt \
&& npm install --platform=linux --arch=arm64v8 bcrypt \
&& mv node_modules/bcrypt npm/node_modules/bcrypt
RUN cd /tmp/bundle/programs/server \
&& rm -rf npm/node_modules/bcrypt \
&& npm install --platform=linux --arch=arm64v8 bcrypt \
&& mv node_modules/bcrypt npm/node_modules/bcrypt
RUN cd /tmp/bundle/programs/server/npm/node_modules/meteor/accounts-password \
&& rm -rf /node_modules/bcrypt \
&& npm install --platform=linux --arch=arm64v8 bcrypt
area. These modules cannot be built on Arm architecture without modification.