Skip to content

Commit 30c2f2a

Browse files
authored
Merge pull request #4851 from AkihiroSuda/moby
go.mod: github.com/moby/moby/v2 v2.0.0-beta.9
2 parents d6373fc + 632b630 commit 30c2f2a

15 files changed

Lines changed: 331 additions & 37 deletions

File tree

.github/dependabot.yml

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -23,8 +23,9 @@ updates:
2323
- "github.com/moby/sys/*"
2424
docker:
2525
patterns:
26-
- "github.com/docker/docker"
2726
- "github.com/docker/cli"
27+
- "github.com/moby/moby/client"
28+
- "github.com/moby/moby/v2"
2829
containerd:
2930
patterns:
3031
- "github.com/containerd/containerd"

go.mod

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -33,7 +33,6 @@ require (
3333
github.com/cyphar/filepath-securejoin v0.6.1 //gomodjail:unconfined
3434
github.com/distribution/reference v0.6.0
3535
github.com/docker/cli v29.4.0+incompatible //gomodjail:unconfined
36-
github.com/docker/docker v28.5.2+incompatible //gomodjail:unconfined
3736
github.com/docker/go-connections v0.7.0
3837
github.com/docker/go-units v0.5.0
3938
github.com/fahedouch/go-logrotate v0.3.0 //gomodjail:unconfined
@@ -44,6 +43,8 @@ require (
4443
github.com/ipfs/go-cid v0.6.1
4544
github.com/klauspost/compress v1.18.5
4645
github.com/mattn/go-isatty v0.0.21 //gomodjail:unconfined
46+
github.com/moby/moby/client v0.4.0
47+
github.com/moby/moby/v2 v2.0.0-beta.9
4748
github.com/moby/sys/mount v0.3.4
4849
github.com/moby/sys/signal v0.7.1
4950
github.com/moby/sys/user v0.4.0 //gomodjail:unconfined
@@ -75,7 +76,7 @@ require (
7576

7677
require (
7778
github.com/Azure/go-ansiterm v0.0.0-20250102033503-faa5f7b0171c // indirect
78-
github.com/cilium/ebpf v0.16.0 // indirect
79+
github.com/cilium/ebpf v0.17.3 // indirect
7980
github.com/containerd/errdefs/pkg v0.3.0 // indirect
8081
github.com/containerd/go-runc v1.1.0 // indirect
8182
github.com/containerd/plugin v1.0.0 // indirect
@@ -88,7 +89,7 @@ require (
8889
github.com/go-jose/go-jose/v4 v4.1.4 // indirect
8990
github.com/go-logr/logr v1.4.3 // indirect
9091
github.com/go-logr/stdr v1.2.2 // indirect
91-
github.com/godbus/dbus/v5 v5.1.0 // indirect
92+
github.com/godbus/dbus/v5 v5.2.2 // indirect
9293
github.com/gogo/protobuf v1.3.2 // indirect
9394
github.com/golang/groupcache v0.0.0-20241129210726-2c02b8208cf8 // indirect
9495
github.com/golang/protobuf v1.5.4 // indirect
@@ -148,8 +149,7 @@ require (
148149

149150
require (
150151
github.com/cespare/xxhash/v2 v2.3.0 // indirect
151-
github.com/moby/moby/api v1.52.0 // indirect
152-
github.com/moby/moby/client v0.1.0 // indirect
152+
github.com/moby/moby/api v1.54.1 // indirect
153153
github.com/moby/sys/capability v0.4.0 // indirect
154154
go.yaml.in/yaml/v4 v4.0.0-rc.4 // indirect
155155
)

go.sum

Lines changed: 11 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -14,13 +14,14 @@ github.com/Microsoft/go-winio v0.6.3-0.20251027160822-ad3df93bed29 h1:0kQAzHq8vL
1414
github.com/Microsoft/go-winio v0.6.3-0.20251027160822-ad3df93bed29/go.mod h1:ZWa7ssZJT30CCDGJ7fk/2SBTq9BIQrrVjrcss0UW2s0=
1515
github.com/Microsoft/hcsshim v0.15.0-rc.1 h1:FbbwtQmiD+BVHynGkx5S65JkLyhkEiiTP8nrpmg2SZw=
1616
github.com/Microsoft/hcsshim v0.15.0-rc.1/go.mod h1:HWvvUPIy9HF6LotILj1G4VyS065rcLQ6tqj6tMUdOfI=
17+
github.com/blang/semver v3.5.1+incompatible h1:cQNTCjp13qL8KC3Nbxr/y2Bqb63oX6wdnnjpJbkM4JQ=
1718
github.com/blang/semver/v4 v4.0.0 h1:1PFHFE6yCCTv8C1TeyNNarDzntLi7wMI5i/pzqYIsAM=
1819
github.com/blang/semver/v4 v4.0.0/go.mod h1:IbckMUScFkM3pff0VJDNKRiT6TG/YpiHIM2yvyW5YoQ=
1920
github.com/census-instrumentation/opencensus-proto v0.2.1/go.mod h1:f6KPmirojxKA12rnyqOA5BBL4O983OfeGPqjHWSTneU=
2021
github.com/cespare/xxhash/v2 v2.3.0 h1:UL815xU9SqsFlibzuggzjXhog7bL6oX9BbNZnL2UFvs=
2122
github.com/cespare/xxhash/v2 v2.3.0/go.mod h1:VGX0DQ3Q6kWi7AoAeZDth3/j3BFtOZR5XLFGgcrjCOs=
22-
github.com/cilium/ebpf v0.16.0 h1:+BiEnHL6Z7lXnlGUsXQPPAE7+kenAd4ES8MQ5min0Ok=
23-
github.com/cilium/ebpf v0.16.0/go.mod h1:L7u2Blt2jMM/vLAVgjxluxtBKlz3/GWjB0dMOEngfwE=
23+
github.com/cilium/ebpf v0.17.3 h1:FnP4r16PWYSE4ux6zN+//jMcW4nMVRvuTLVTvCjyyjg=
24+
github.com/cilium/ebpf v0.17.3/go.mod h1:G5EDHij8yiLzaqn0WjyfJHvRa+3aDlReIaLVRMvOyJk=
2425
github.com/client9/misspell v0.3.4/go.mod h1:qj6jICC3Q7zFZvVWo7KLAzC3yx5G7kyvSDkc90ppPyw=
2526
github.com/cncf/udpa/go v0.0.0-20191209042840-269d4d468f6f/go.mod h1:M8M6+tZqaGXZJjfX53e64911xZQV5JYwmTeXPW+k8Sc=
2627
github.com/compose-spec/compose-go/v2 v2.10.2 h1:USa1NUbDcl/cjb8T9iwnuFsnO79H+2ho2L5SjFKz3uI=
@@ -94,8 +95,6 @@ github.com/dlclark/regexp2 v1.11.0 h1:G/nrcoOa7ZXlpoa/91N3X7mM3r8eIlMBBJZvsz/mxK
9495
github.com/dlclark/regexp2 v1.11.0/go.mod h1:DHkYz0B9wPfa6wondMfaivmHpzrQ3v9q8cnmRbL6yW8=
9596
github.com/docker/cli v29.4.0+incompatible h1:+IjXULMetlvWJiuSI0Nbor36lcJ5BTcVpUmB21KBoVM=
9697
github.com/docker/cli v29.4.0+incompatible/go.mod h1:JLrzqnKDaYBop7H2jaqPtU4hHvMKP+vjCwu2uszcLI8=
97-
github.com/docker/docker v28.5.2+incompatible h1:DBX0Y0zAjZbSrm1uzOkdr1onVghKaftjlSWt4AFexzM=
98-
github.com/docker/docker v28.5.2+incompatible/go.mod h1:eEKB0N0r5NX/I1kEveEz05bcu8tLC/8azJZsviup8Sk=
9998
github.com/docker/docker-credential-helpers v0.8.2 h1:bX3YxiGzFP5sOXWc3bTPEXdEaZSeVMrFgOr3T+zrFAo=
10099
github.com/docker/docker-credential-helpers v0.8.2/go.mod h1:P3ci7E3lwkZg6XiHdRKft1KckHiO9a2rNtyFbZ/ry9M=
101100
github.com/docker/go-connections v0.7.0 h1:6SsRfJddP22WMrCkj19x9WKjEDTB+ahsdiGYf0mN39c=
@@ -131,8 +130,8 @@ github.com/go-task/slim-sprig/v3 v3.0.0 h1:sUs3vkvUymDpBKi3qH1YSqBQk9+9D/8M2mN1v
131130
github.com/go-task/slim-sprig/v3 v3.0.0/go.mod h1:W848ghGpv3Qj3dhTPRyJypKRiqCdHZiAzKg9hl15HA8=
132131
github.com/go-viper/mapstructure/v2 v2.5.0 h1:vM5IJoUAy3d7zRSVtIwQgBj7BiWtMPfmPEgAXnvj1Ro=
133132
github.com/go-viper/mapstructure/v2 v2.5.0/go.mod h1:oJDH3BJKyqBA2TXFhDsKDGDTlndYOZ6rGS0BRZIxGhM=
134-
github.com/godbus/dbus/v5 v5.1.0 h1:4KLkAxT3aOY8Li4FRJe/KvhoNFFxo0m6fNuFUO8QJUk=
135-
github.com/godbus/dbus/v5 v5.1.0/go.mod h1:xhWf0FNVPg57R7Z0UbKHbJfkEywrmjJnf7w5xrFpKfA=
133+
github.com/godbus/dbus/v5 v5.2.2 h1:TUR3TgtSVDmjiXOgAAyaZbYmIeP3DPkld3jgKGV8mXQ=
134+
github.com/godbus/dbus/v5 v5.2.2/go.mod h1:3AAv2+hPq5rdnr5txxxRwiGjPXamgoIHgz9FPBfOp3c=
136135
github.com/gogo/protobuf v1.3.2 h1:Ov1cvc58UF3b5XjBnZv7+opcTcQFZebYjWzi34vdm4Q=
137136
github.com/gogo/protobuf v1.3.2/go.mod h1:P1XiOD3dCwIKUDQYPy72D8LYyHL2YPYrpS2s69NZV8Q=
138137
github.com/golang/glog v0.0.0-20160126235308-23def4e6c14b/go.mod h1:SBH7ygxi8pfUlaOkMMuAQtPIUF8ecWP5IEl/CR7VP2Q=
@@ -207,10 +206,12 @@ github.com/moby/docker-image-spec v1.3.1 h1:jMKff3w6PgbfSa69GfNg+zN/XLhfXJGnEx3N
207206
github.com/moby/docker-image-spec v1.3.1/go.mod h1:eKmb5VW8vQEh/BAr2yvVNvuiJuY6UIocYsFu/DxxRpo=
208207
github.com/moby/locker v1.0.1 h1:fOXqR41zeveg4fFODix+1Ch4mj/gT0NE1XJbp/epuBg=
209208
github.com/moby/locker v1.0.1/go.mod h1:S7SDdo5zpBK84bzzVlKr2V0hz+7x9hWbYC/kq7oQppc=
210-
github.com/moby/moby/api v1.52.0 h1:00BtlJY4MXkkt84WhUZPRqt5TvPbgig2FZvTbe3igYg=
211-
github.com/moby/moby/api v1.52.0/go.mod h1:8mb+ReTlisw4pS6BRzCMts5M49W5M7bKt1cJy/YbAqc=
212-
github.com/moby/moby/client v0.1.0 h1:nt+hn6O9cyJQqq5UWnFGqsZRTS/JirUqzPjEl0Bdc/8=
213-
github.com/moby/moby/client v0.1.0/go.mod h1:O+/tw5d4a1Ha/ZA/tPxIZJapJRUS6LNZ1wiVRxYHyUE=
209+
github.com/moby/moby/api v1.54.1 h1:TqVzuJkOLsgLDDwNLmYqACUuTehOHRGKiPhvH8V3Nn4=
210+
github.com/moby/moby/api v1.54.1/go.mod h1:+RQ6wluLwtYaTd1WnPLykIDPekkuyD/ROWQClE83pzs=
211+
github.com/moby/moby/client v0.4.0 h1:S+2XegzHQrrvTCvF6s5HFzcrywWQmuVnhOXe2kiWjIw=
212+
github.com/moby/moby/client v0.4.0/go.mod h1:QWPbvWchQbxBNdaLSpoKpCdf5E+WxFAgNHogCWDoa7g=
213+
github.com/moby/moby/v2 v2.0.0-beta.9 h1:UnFpzAeGOS4Wh8zgeFzwUx62P+VzcHGNoqJB4kx1VKg=
214+
github.com/moby/moby/v2 v2.0.0-beta.9/go.mod h1:3AICfhxV7CcWBOG/BB/hdDOrcSd04cYDSgn1hNYEBUI=
214215
github.com/moby/sys/capability v0.4.0 h1:4D4mI6KlNtWMCM1Z/K0i7RV1FkX+DBDHKVJpCndZoHk=
215216
github.com/moby/sys/capability v0.4.0/go.mod h1:4g9IK291rVkms3LKCDOoYlnV8xKwoDTpIrNEE35Wq0I=
216217
github.com/moby/sys/mount v0.3.4 h1:yn5jq4STPztkkzSKpZkLcmjue+bZJ0u2AuQY1iNI1Ww=

pkg/cmd/volume/create.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,7 @@ package volume
1919
import (
2020
"fmt"
2121

22-
"github.com/docker/docker/pkg/stringid"
22+
"github.com/moby/moby/client/pkg/stringid"
2323

2424
"github.com/containerd/nerdctl/v2/pkg/api/types"
2525
"github.com/containerd/nerdctl/v2/pkg/inspecttypes/native"

pkg/composer/copy.go

Lines changed: 23 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -14,16 +14,23 @@
1414
limitations under the License.
1515
*/
1616

17+
/*
18+
Portions from https://github.com/moby/moby/blob/v28.5.2/pkg/system/filesys.go
19+
Copyright (C) Docker/Moby authors.
20+
Licensed under the Apache License, Version 2.0
21+
NOTICE: https://github.com/moby/moby/blob/v28.5.2/NOTICE
22+
*/
23+
1724
package composer
1825

1926
import (
2027
"context"
2128
"errors"
2229
"fmt"
30+
"os"
31+
"path/filepath"
2332
"strings"
2433

25-
"github.com/docker/docker/pkg/system"
26-
2734
containerd "github.com/containerd/containerd/v2/client"
2835
"github.com/containerd/log"
2936

@@ -144,9 +151,22 @@ func (c *Composer) listContainersTargetedForCopy(ctx context.Context, index int,
144151
return containers, err
145152
}
146153

154+
// isAbs is a platform-agnostic wrapper for filepath.IsAbs.
155+
// From https://github.com/moby/moby/blob/v28.5.2/pkg/system/filesys.go#L9-L19
156+
//
157+
// On Windows, golang filepath.IsAbs does not consider a path \windows\system32
158+
// as absolute as it doesn't start with a drive-letter/colon combination. However,
159+
// in docker we need to verify things such as WORKDIR /windows/system32 in
160+
// a Dockerfile (which gets translated to \windows\system32 when being processed
161+
// by the daemon). This SHOULD be treated as absolute from a docker processing
162+
// perspective.
163+
func isAbs(path string) bool {
164+
return filepath.IsAbs(path) || strings.HasPrefix(path, string(os.PathSeparator))
165+
}
166+
147167
// https://github.com/docker/compose/blob/v2.21.0/pkg/compose/cp.go#L307
148168
func splitCpArg(arg string) (container, path string) {
149-
if system.IsAbs(arg) {
169+
if isAbs(arg) {
150170
// Explicit local absolute path, e.g., `C:\foo` or `/foo`.
151171
return "", arg
152172
}

pkg/containerutil/containerutil.go

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,6 @@ import (
3030
"time"
3131

3232
dockercliopts "github.com/docker/cli/opts"
33-
dockeropts "github.com/docker/docker/opts"
3433
"github.com/moby/sys/signal"
3534
"github.com/opencontainers/runtime-spec/specs-go"
3635
"golang.org/x/term"
@@ -644,6 +643,7 @@ func DecodeContainerRmOptLabel(rmOptLabel string) (bool, error) {
644643
//
645644
// Returns a map of host-to-IPs or errors if any mapping strings are not correctly formatted.
646645
func ParseExtraHosts(extraHosts []string, hostGatewayIP, separator string) ([]string, error) {
646+
const hostGatewayName = "host-gateway"
647647
hosts := make([]string, 0, len(extraHosts))
648648
for _, hostToIP := range strutil.DedupeStrSlice(extraHosts) {
649649
if _, err := dockercliopts.ValidateExtraHost(hostToIP); err != nil {
@@ -659,9 +659,9 @@ func ParseExtraHosts(extraHosts []string, hostGatewayIP, separator string) ([]st
659659

660660
// If the IP address is a string called "host-gateway", replace this value with the IP address stored
661661
// in the daemon level HostGatewayIP config variable.
662-
if ip == dockeropts.HostGatewayName && hostGatewayIP == "" {
662+
if ip == hostGatewayName && hostGatewayIP == "" {
663663
return nil, errors.New("unable to derive the IP value for host-gateway")
664-
} else if ip == dockeropts.HostGatewayName {
664+
} else if ip == hostGatewayName {
665665
ip = hostGatewayIP
666666
}
667667

pkg/infoutil/infoutil.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,7 @@ import (
2525
"strings"
2626
"time"
2727

28-
"github.com/docker/docker/pkg/sysinfo"
28+
"github.com/moby/moby/v2/pkg/sysinfo"
2929

3030
containerd "github.com/containerd/containerd/v2/client"
3131
"github.com/containerd/containerd/v2/core/introspection"

pkg/infoutil/infoutil_darwin.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@
1717
package infoutil
1818

1919
import (
20-
"github.com/docker/docker/pkg/sysinfo"
20+
"github.com/moby/moby/v2/pkg/sysinfo"
2121

2222
"github.com/containerd/nerdctl/v2/pkg/inspecttypes/dockercompat"
2323
)

pkg/infoutil/infoutil_freebsd.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@
1717
package infoutil
1818

1919
import (
20-
"github.com/docker/docker/pkg/sysinfo"
20+
"github.com/moby/moby/v2/pkg/sysinfo"
2121

2222
"github.com/containerd/nerdctl/v2/pkg/inspecttypes/dockercompat"
2323
)

pkg/infoutil/infoutil_linux.go

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -21,8 +21,8 @@ import (
2121
"runtime"
2222
"strings"
2323

24-
"github.com/docker/docker/pkg/meminfo"
25-
"github.com/docker/docker/pkg/sysinfo"
24+
"github.com/moby/moby/v2/pkg/meminfo"
25+
"github.com/moby/moby/v2/pkg/sysinfo"
2626

2727
"github.com/containerd/cgroups/v3"
2828

0 commit comments

Comments
 (0)