Just one: I had an issue when starting up the server via "docker-compose up -d" that /run/xtables.lock was being created as a directory - I manually removed the directory and created an empty file by running “touch /run/xtables.lock” and it worked. This was on a Raspberry Pi 3B.
The new 64 bit OS uses the arm64 architecture so it just picks up the correct arm64 image from docker hub when following the normal docker-compose method. No changes to the install methodology were required.
I had a whole writeup for cross compilation, there were several steps for that using docker buildx, and I was able to get it installed and up but i couldn't figure out the segfault issue with wireguard. Basically running "wg" or any variation of the command caused a segfault using the apk installed wireguard. Looking at other people having similar issues, it's possible that newer versions of RPi may not have the issue. It seemed like it also might have to do with Alpine linux container trying to use the wireguard that was compiled for raspbian on the host - I suspect that if I had installed Alpine linux instead of raspbian on the Pi that it might have worked. By that point I noticed there was a 64 bit OS available though, so I went that route since you guys already make an arm64 available in docker hub and I didn't have to create my own image that way.
Most newer RPi's support the 64 bit OS anyway (it's pretty new, only generally available as of a couple months ago) so I would absolutely recommend pointing users to putting the 64 bit OS on their pi (it's not the default choice in their installer, you actually have to go into a dropdown and pick it) instead of trying cross compile for armv7 like I tried. Any Pi 3 (released in 2016) or newer has 64 bit hardware. Any pi older than a Pi 3 would have to be cross compiled for the other architecture.