HollaEx Kit itself does support multi-arch build and run, including the ARM environment.
The only problem here is the node-sass
, which is one of the dependencies of the HollaEx Kit web. Node-sass currently only provides binary for amd64 CPUs.
I’m not going to say that there is no way to run full HollaEx on the ARM machine, but you gotta do some dirty job for now…
First, you need a normal amd64 computer, like your typical laptop or desktop. And, get the latest HollaEx CLI v2.0.12 both on the amd64 computer and ARM server.
You should also copy your HollaEx Kit directory on your server to your computer too.
Now, run hollaex web --build --arch arm64v8
on your computer. This will make a web image for arm64v8
arch, but with amd64 based npm dependencies. So with this way, you would be able to package an arm64v8 web image with an amd64 version of node-sass and everything. This will have no issue cause hollaex web image got only static files at the end. There will be no compatibility issue.
You should push the built image to Docker Hub or any other Docker image registry.
Then, move to the ARM server, and pull the pushed image on it first.
Now, run hollaex web --apply --registry <YOUR_IMAGE_REGISTRY> --tag <YOUR_IMAGE_TAG
command to force apply the pulled image on your server.
You should also run hollaex server --restart
and hollaex web --restart
right away after you applied the image.
Once everything gets restarted, it would start to function.
Please give a shot and let me know if something does not work as expected.
Thank you!