-
Notifications
You must be signed in to change notification settings - Fork 376
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
Improve docker build performance #233
Conversation
For hermeticity we should also be pinning the dependency versions in requirements.txt |
Regarding caching - awesome, thanks! |
@chowder ^ |
This reverts commit 7253b09.
Dockerfile
Outdated
@@ -26,7 +26,7 @@ RUN DEBIAN_FRONTEND=noninteractive apt-get install -qq -y --fix-missing --no-ins | |||
&& if [ "${BUILDX_QEMU_ENV}" = "true" ] && [ "$(getconf LONG_BIT)" = "32" ]; then \ | |||
pip install -U cryptography==3.3.2; \ | |||
fi \ | |||
&& pip install -r requirements.txt \ | |||
&& pip install -r requirements.txt --extra-index-url=https://www.piwheels.org/simple \ |
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.
@chowder Won't it affect other platforms: AMD64 and ARM64? https://www.piwheels.org/simple/pandas/ only has ARMv6 and ARMv7 packages.
OK, let's test this. |
@chowder Hm, is it possible that you change from "push: true" to "push: false" was only for debugging? Because currently I don't see the container even though it was build successfully @rdavydov from that he said in my FR it should not have affected the other platforms because he used --extra-index-url instead of --index-url |
@silentguy256 There is no need in piwheels.
And now we have caching, so let's just leave it without piwheels.
Whoops, that's right. Need to change that and test caching. |
@silentguy256 Caching works, ~20s! Containers are there now. Thanks for the heads up! |
Improve docker build performance
Description
Unfortunately it doesn't address the fact that we still need to build pandas from source (since piwheels don't provide wheels for Python 3.11), and that takes up majority of the build time.
See: #232
How Has This Been Tested?
The following two GH Actions runs on my fork are successful, with the second one taking only 15s for a no-op rebuild:
https://github.com/chowder/Twitch-Channel-Points-Miner-v2/actions/runs/4588562374
https://github.com/chowder/Twitch-Channel-Points-Miner-v2/actions/runs/4589448613
Checklist: