Closed odidev closed 6 years ago
Hi @odidev, We already build ARM64 RPMs for Photon. And we do have a plan to build ARM64 Photon Docker images. Thanks for asking!
@YustasSwamp : Are there any timelines for official support?
I have photon-rootfs ready with me to support Docker for photon for arm64v8
.
I am getting pushy as we have critical requirement to support photon for arm64
via docker
Regards,
Just curious, What project/customer is it?
ARM64 support is targeted for Photon 3.0 release. No date yet. ~Year from now? We can publish RC/Beta of arm support to the dev (not release) repository sooner, let's say end of this year. It is in active development now.
@YustasSwamp : It is not for a specific project. This is w.r.t. increasing demand in the market towards arm64 architecture.
Sooner, we provide support, higher will be the adoption rate from customers. In addition, as I mentioned, I already have working rootfs with me. Can I push the same for review purpose?
I have made changes to photon.repo
to point to
baseurl=https://vmware.bintray.com/photon_dev_aarch64/
https://vmware.bintray.com/photon_dev_aarch64/ is preliminary version of aarch64 support. It has not gone through our testing coverage. So the quality is not guaranteed. We don't want it to be published to dockerhub. You can use your docker image generated from these RPMs and even push it to your dockerhub repo, if you have it, it should work as for now.
Hope to see officially tested and signed RPM in the photon_dev_aarch64 repo soon. Creating docker image after that is a question of 2 weeks.
@YustasSwamp : Thanks, I will push my image to my forked dockerhub repo.
But, I think that will not be able to make it docker pull
able.
BTW, is there any way that you can create a development or experimental support branch in official repo.
In this way, developers can get access to that branch and get the code too.
Also, a person doing docker pull
on arm64 will get an experimental image.
Would you guys share on how the ARM64 image was built? I have an ARM64 box but since the Photon image build depends on Photon itself (that is only amd64) it becomes hard to do it.
Have you crossbuilt it using qemu on an amd64 box @odidev ? I'm planning to build Harbor for the ARM64 arch and this is the first step.
Thanks, any help is welcome!
You can use ARM64 Ubuntu to build ARM64 Photon RPMs.
I understand there are already RPMs built for ARM64, it would be just a matter of changing the repository source like described by @odidev . The problem is that the photon image build is based on photon itself... like a cyclic dependency.
Can't I build the Photon image on another base image like CentOS?
Photon build system can be used on any Linux OS. Yes, build system pulls Photon core toolchains RPMs from the repository to create sandbox environment (chroot or container). It is Photon based sandbox environment but the host OS might be any Linux.
If you do not have core toolchains available, let's say for MIPS or SPARC architecture, then there is an bootstraping stage to build them using host toolchains and then rebuild then using themselves.
For convenience purposes we skip bootstraping stage for every build by using prebuilt core toolchain RPMs.
Where can I get these core RPMs? Is there a script to do the bootstrapping and create the base image? Thanks!
When you do make packages
, make iso
, or other targets - build system pulls them from bintray and save in stage/publishrpms folder. pull script, location and file names are here https://github.com/vmware/photon/tree/master/support/pullpublishrpms
Initially build system didn't use publishrpms and it did bootstraping every build. You can find that in the commits history back to 2016. Makefile still has rudiments like tool-chain-stage1
and tool-chain-stage2
, but we don't use them as part of the build process
I confirm the same, that I also compiled Photon over CentOS
distribution with the command make iso
.
Also, I do agree that this will not run as it is over arm64v8
architecture.
So you will have to resolve intermediate dependencies to get desired rpm's.
I addition, one key point to note is that bintray doesn't have all the required rpm's for arm64
.
BTW, I am also waiting to get official go ahead for Photon support for ARM64
I am here because the new CNCF project harbor
depends on Photon, and the build fails because there is no arm64 version of Photon.
See https://github.com/goharbor/harbor/issues/6277 for the related issue.
Hi @vielmetti
arm64v8
is supported in photon:3.0
version.
I can see that your Harbor image is using photon:2.0
, which is actually not supported for arm64v8
.
Please modify it to photon:3.0
and then check if it works for you.
Regards,
Hi @vielmetti
arm64v8
is supported inphoton:3.0
version. I can see that your Harbor image is usingphoton:2.0
, which is actually not supported forarm64v8
.Please modify it to
photon:3.0
and then check if it works for you.Regards,
Got the same issue, update the dockerfile to use photon:3.0 version and have a try, Thanks .
It looks like Photon Docker still not support
ARM64v8 architecture
. I have built a photon rootfs for ARM64 architecture, which is working very well for me.I would be happy to raise a PR, given that it can be supported by community. Do let me know, further steps required in this direction.