Building your own ArgoCD Arm64 image
I like Argo, I like Pi's, I need an Arm64 image of Argo.
I like Argo, I like Pi's, I need an Arm64image of Argo.
A little pre-req's you will need for this.
- A Raspberry Pi (or some other ARM64 system), it's faster this way
- Docker
- Go
- Git
- Your user added to the
docker
group
First thing, do this on a Pi, it's actually faster than trying to use Qemu on an x86 system. By a lot.
I am not going to cover how to set up a Pi, but you will need a couple of tools installed. Docker
, git
and go
.
To set up git
is easy.
sudo apt update
sudo apt install git
I am not going to cover how to install Docker
and go
. There is really good documentation on how to do that. Here are a couple of links to get you started.
Next, make sure your user is added to the docker
group. sudo usermod -a -G docker yourusername
. You will need to log off and log back in after that for it to take effect.
Now that the pre-requisites are complete, we need to check out the code and start the build.
To get the code we use git
. The command for that is git clone https://github.com/argoproj/argo-cd.git
Now that the repository is cloned, go in to it. cd argo-cd
Check out the correct tag, the latest at the time of writing is v2.1.6
. To do that use git checkout v2.1.6
Now we build, make armimage
. This will run for a while, for me it was about a half hour. When it is done it will output something like this:
Successfully built c3095878a525
Successfully tagged argocd:v2.1.6-arm
You can verify it exists by running docker container ls
.
Conclusion
They recently fixed the issue of not being able to build an image for the ARM processors, but they currently do not have any official ARM images. From what I could gather from the GitHub issue it has to do with how long it takes to build, lack of resources to test it and lack of hardware.