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

docker: 19.03.4 -> 20.10.2 #108960

Merged
1 commit merged into from Jan 13, 2021
Merged

docker: 19.03.4 -> 20.10.2 #108960

1 commit merged into from Jan 13, 2021

Conversation

mikroskeem
Copy link
Member

@mikroskeem mikroskeem commented Jan 10, 2021

Motivation for this change

This PR updates Docker to 20.10.2, and refactors the build process to handle Docker engine and CLI split.

Also adds long waited CGroups v2 support.

Depends on #108959

Things done
  • Tested using sandboxing (nix.useSandbox on NixOS, or option sandbox in nix.conf on non-NixOS linux)
  • Built on platform(s)
    • NixOS
    • macOS
    • other Linux distributions
  • Tested via one or more NixOS test(s) if existing and applicable for the change (look inside nixos/tests)
  • Tested compilation of all pkgs that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review wip"
  • Tested execution of all binary files (usually in ./result/bin/)
  • Determined the impact on package closure size (by running nix path-info -S before and after)
  • Ensured that relevant documentation is up to date
  • Fits CONTRIBUTING.md.

docker = docker_19_03;
docker-edge = docker_19_03;
docker = docker_20_10;
docker-edge = docker_20_10;
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Maybe it would be better to move this to aliases.nix file 🤔 ?

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This could change in the future when they start builds for 21.04.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

At least to me it seems they stopped with edge releases (can't find a reference for Docker for Linux, but it seems that what happened for Windows/macOS at least).

@mikroskeem mikroskeem force-pushed the docker-20.10.x branch 3 times, most recently from 37fca40 to 198fd05 Compare January 10, 2021 20:49
@ajs124
Copy link
Member

ajs124 commented Jan 12, 2021

This should close #109156

@SuperSandro2000
Copy link
Member

This should close #109156

Should we backport this or the 19.03.9 update?

Copy link

@ghost ghost left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks a lot, this is awesome! I tested it on a GitLab CI runner and was able to run with systemd.enableUnifiedCgroupHierarchy = true; just fine. Also with this release, docker respects the --iptables=false build-time flag afaict, so this makes things easier for me as an nftables user.

This commit refactors the build process to handle Docker engine and
CLI split.
Copy link
Member

@vdemeester vdemeester left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Nice, LGTM 🐯

@andersk
Copy link
Contributor

andersk commented Jan 15, 2021

  • Tested via one or more NixOS test(s) if existing and applicable for the change (look inside nixos/tests)

Shouldn’t somebody have checked this before merge? This commit broke the channel-blocking nixos.tests.docker test: #109416.

@ghost
Copy link

ghost commented Jan 15, 2021

I'm sorry, you're right. I only did testing in a real-world scenario. Interestingly docker.passthru.tests on aarch64-linux succeeded in ofborg. I'll look into it.

@Mic92
Copy link
Member

Mic92 commented Feb 1, 2021

This broke the kubelet service from kubernetes:

Jan 31 21:21:32 eve kubelet[30515]: F0131 21:21:32.419449   30515 server.go:265] failed to run Kubelet: misconfiguration: kubelet cgroup driver: "cgroupfs" is different from docker cgroup driver: "systemd"

@Mic92
Copy link
Member

Mic92 commented Feb 1, 2021

This broke the kubelet service from kubernetes:

Jan 31 21:21:32 eve kubelet[30515]: F0131 21:21:32.419449   30515 server.go:265] failed to run Kubelet: misconfiguration: kubelet cgroup driver: "cgroupfs" is different from docker cgroup driver: "systemd"

Addressed in #111590

This pull request was closed.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

9 participants