Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Question on further patches I could send (x86 images) #5

Open
depau opened this issue Apr 17, 2020 · 2 comments
Open

Question on further patches I could send (x86 images) #5

depau opened this issue Apr 17, 2020 · 2 comments

Comments

@depau
Copy link
Contributor

depau commented Apr 17, 2020

Since I'm going to need up-to-date Arch/ALARM images for other further work of my own, I actually forked your repo on my git server and performed some (quite minor) changes (other than the ones for which I already sent you pull requests).

Possibly interesting ones:

  • x86_64 image
  • Drone.io CI config (since I build them with Drone)

I additionally:

  • Renamed all the Dockerfiles to archlinux CPU architecture names, since I really don't like the docker-y arch names 😂
  • Removed all the qemu and the other scripts since I build the images on their target architecture

Let me know if you're interested in any of these and I'll send you the patches.

My git repo: https://git.depau.eu/archlinux/docker-archlinux-daily/
Repo builds: https://builds.depau.eu/archlinux/docker-archlinux-daily/
Built images on Docker Hub: https://hub.docker.com/r/depau/archlinux-daily

@agners
Copy link
Owner

agners commented Apr 17, 2020

x86_64 image

I am all in adding a x86_64 image, with that we have a true multi-arch image :-) I probably would not want to "compete" with the official one: https://hub.docker.com/_/archlinux/

What is your approach? Build it from scratch too or just use the official one and make it part of the multi-arch image?

Drone.io CI config

Actually I get some weird notifications every now and then from Travis CI, and also otherwise wansn't very happy how they handled the move to newer Ubuntu version. So I am all in trying drone.io instead.

Renamed all the Dockerfiles to archlinux CPU architecture names

Yeah not sure about that one. After all, we cannot create a multi-image with arbitrary architecture names, it must be what Docker specifies/offers...

Removed all the qemu and the other scripts since I build the images on their target architecture

Can this be done on drone.io?

@depau
Copy link
Contributor Author

depau commented Apr 17, 2020

I am all in adding a x86_64 image, with that we have a true multi-arch image :-) I probably would not want to "compete" with the official one: https://hub.docker.com/_/archlinux/

What is your approach? Build it from scratch too or just use the official one and make it part of the multi-arch image?

I used the official image to build the first image, then used it to build the following ones.
I don't think the point is to "compete" with the official image: I think your approach is better since you build using just Docker and no external tools.

In my case I just need it because I want it to be as up-to-date as possible since I'll be using it to build packages, that's why I added it.

It should also be quite easy to add an ArchLinux32 build.

Drone.io CI config

Actually I get some weird notifications every now and then from Travis CI, and also otherwise wansn't very happy how they handled the move to newer Ubuntu version. So I am all in trying drone.io instead.

Sure, I can send a PR my Drone config. I see that they have a hosted instance that is free for open-source projects: https://cloud.drone.io/

Renamed all the Dockerfiles to archlinux CPU architecture names

Yeah not sure about that one. After all, we cannot create a multi-image with arbitrary architecture names, it must be what Docker specifies/offers...

Yes, don't worry, it's just me :)

Removed all the qemu and the other scripts since I build the images on their target architecture

Can this be done on drone.io?

I'm using my own iron, so yes. I'm running the x86 builds on an x86 machine and the arm builds on a Rock64. Drone supports different architectures and OSs.

I actually set up a qemu-user-static-based runner too, however that cannot be used to build docker images since:

  • To run docker builds in Drone it needs to run its own dockerd
  • If you use the arm agent it will of course run an arm dockerd binary
  • qemu-user-static won't translate iptables syscalls, so networking won't work while building the image.

But again, the naming and script removal changes are just for my setup to clean up my repo, I mentioned them for the sake of completeness but don't worry about them :)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants