I have a Docker File for my application and I use Docker Hub to build it. This works fine on a Synology DS218+ Disk Station, which is Intel based.
Qnap supports Docker on both Intel and Arm devices with its Container Station software , I have purchased a TS131P to test this out but it failed with exec format error
. Apparently I have to build an Arm version of the image, but how do I do this ?
Can I build the image on the Qnap itself somehow ?
Update
So my base image was openjdk:8-jre-alpine
, so I have found on DockerHub an arm32 equivalent of this, https://hub.docker.com/r/arm32v6/openjdk/ so now:
- Created a new BitBucket rep
- Copied over Docker File
- Changed first line of Docker File to
FROM arm32v6/openjdk:8-jre-alpine
- Created a new Automated Build on Docker linked to this repo
But the build is now failing on the second line
RUN apk --no-cache add \
curl \
tini
with
[91mstandard_init_linux.go:190: exec user process caused "exec format error"
Since I am using arm image I assume that apk should be compiled for arm, or do I need to tell Docker Hub to build on Arm rather than Intel ?