-
-
Notifications
You must be signed in to change notification settings - Fork 170
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
Docker #37
Docker #37
Conversation
- Fix: install php7.3-gd extension - Do not install composer 1 and only 2 - Install php7.3-mbstring extension - Group apt installs together for better caching
- Run tests in verify job - Publish only if verify pass - Cross build only for master pushes and releases - Build for amd64 only for branches
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
That's great, I really liked the verify
part but I still don't see the action doing native cross build yet. I understand that you might think that native cross build is better but buildx
use BUILDKIT
which is some sort of emulation (not through QEMU). What I usually understand from native build is that you build the images on desired arch and then use manifest to combine them but this might be overstratch now.
Anyway I see this GA is very good, we just need to test how fast it will be for each push. we might don't want to build for linux/arm/v6
as I think no one will host on it.
Last thing I still don't understand what you are trying to do by limiting build to amd64
if we want to push to dev branch. I think it is important to keep cross build for testing also because if @Bubka used something in the future that is not available for ARM
then this will break out things for ARM
versions.
@qdm12 I forgot to mention you 😅 |
Don't worry I get notifications, I just haven't got the time to answer. If you look at the Dockerfile, some of the steps are run only once on the native build platform to build for N target architectures. I think it's just composer dependencies setup, since other things (essentially apt install) are platform specific so must be emulated. On my machine, building for 1 non native arch or 3 non native arch takes about the same time (its mostly network I guess), although it's much quicker to build for the native platform only (30sec vs 2min). That's one of the reasons I limited branch building to amd64, since I don't think people would really pull a branch based image, although it can be useful to test on our machines (amd64). But we can change that, I don't mind. |
- Defaults to 1000:1000 instead of www-data - Update docker readme
I changed the base image to be Cross building is now much quicker than with Debian (I guess
Although it can take 10-30s to pull all the base images for each architecture, if these are not present/cached in the GA worker. I also tried basing it on |
- CPU arch compatibility - Assumption on path being `/yourpath` - Fix chown from 33 to 1000 - Warning to backup database beforing updating - Add tagged images information - Update implementation details - Remove TODOs as they are all done
@MohamedElashri @Bubka I think this is ready now, I'm also curious to see how Github Actions performs (and hope it works too 😉). Feel free to take your time to review it and to comment the code with questions if you have any. A few useful links: |
@Bubka Not my repository, but you should squash and merge instead of merging all the commits next time 😉 You can set that as the default behavior in the repository settings. Also there was a bug in my |
Yeah I forgot to squash, thanks for the heads-up regarding the default behavior. |
Work in progress, almost ready!
qmcgaw/2fauth
to Bubka's Docker hub username eventuallydocker build
it yourself/2fauth/installed
if you want to reset your database or change database.2fauth/2fauth
to Docker HubAlso see #39