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

[RFC] Docker Hub subscription #3518

Closed
StrikerRUS opened this issue Nov 2, 2020 · 7 comments
Closed

[RFC] Docker Hub subscription #3518

StrikerRUS opened this issue Nov 2, 2020 · 7 comments
Assignees

Comments

@StrikerRUS
Copy link
Collaborator

Docker has introduced paid subscriptions and has limited pulls for users.
https://www.docker.com/blog/scaling-docker-to-serve-millions-more-developers-network-egress/

We use Docker in our Azure Pipelines with our own Docker image from https://github.com/guolinke/lightgbm-ci-docker:

LightGBM/.vsts-ci.yml

Lines 15 to 16 in cf69591

- container: ubuntu1404
image: lightgbm/vsts-agent:ubuntu-14.04

and for some R builds
container: rhub/rocker-gcc-san

container: wch1/r-debug

With new Docker subscription model we have the following.

Free tier allows 100 pulls per 6 hours: https://www.docker.com/pricing.

Some special options are available for Open Source projects but requires applying Google Form and not listed publicly: https://www.docker.com/community/open-source/application.

To be honest, I'm not sure whether 100 pulls are enough for us as some CIs use Docker internally even if we do not specify containers and require Docker jobs/actions/steps. Also, it is very unclear for me how CI can "log in" to use 200 free pulls instead of default 100 ones.

Authenticated users (Docker ID)

For example, NVIDIA suggests migrating to NGC from Docker Hub for CUDA Docker users: https://twitter.com/NVIDIAAI/status/1323133675417051145.

@jameslamb
Copy link
Collaborator

Since this is a Microsoft project, can we use Azure Container Registry ? We could push the images that we care about there.

it is very unclear for me how CI can "log in" to use 200 free pulls instead of default 100 ones.

You can use the docker login command to make authenticated requests to a container registry.

@StrikerRUS
Copy link
Collaborator Author

Hmm. sounds reasonable! But what about images that we do not maintain and want to use the latest version of them? I'm speaking about R helper images mostly.

Anyway, I think we can wait a little bit and see what 100 pulls per 6 hours mean in real life. Also, it worth to keep an eye on open source community movements.

@jameslamb
Copy link
Collaborator

Ok yes I agree, we don't need to do anything right now, but should probably keep this open and monitor it for a few months

I'm not sure if the CI services we use rely on docker for non-containerized workflows. I think Azure DevOps, Appveyor, and Travis all provision virtual machines using VM images, not containers.

Also....the limit is based on IP address, and I think that for those services every job will end up on a different machine with a different public IP. (I don't know that for sure, but I suspect it is true). That might make this even less of a problem for our purposes 😀

@StrikerRUS
Copy link
Collaborator Author

Just found that we can use GitHub Container Registry (in case if we need of course).
https://docs.github.com/en/free-pro-team@latest/packages/guides/about-github-container-registry
https://docs.github.com/en/free-pro-team@latest/packages/guides/migrating-to-github-container-registry-for-docker-images

Not sure about actual price (seems it is still in beta), but

All data transferred out, when triggered by GitHub Actions, and data transferred in from any source is free.
https://docs.github.com/en/free-pro-team@latest/github/setting-up-and-managing-billing-and-payments-on-github/about-billing-for-github-packages

Unfortunately, not for Azure Pipelines. But who knows what will be done with Azure Pipelines as now Azure and GitHub are owned by Microsoft (they already share same environments as of today).

@StrikerRUS
Copy link
Collaborator Author

We have received a lot of PRs during last months (thanks to Dask module adoption! 🙂). And I have never seen Docker limit error yet. Have you?
I think we can close this issue for now.

@jameslamb
Copy link
Collaborator

I have not seen the issue either. I was worried about it in #3737 when we started pulling the ubuntu:latest image on every run, but it hasn't been an issue.

I'm also in favor of closing it.

@github-actions
Copy link

This issue has been automatically locked since there has not been any recent activity since it was closed. To start a new related discussion, open a new issue at https://github.com/microsoft/LightGBM/issues including a reference to this.

@github-actions github-actions bot locked as resolved and limited conversation to collaborators Aug 23, 2023
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants