Merge pull request #18458 from Luap99/docker-dup-volume

compat container create: match duplicate mounts correctly
This commit is contained in:
OpenShift Merge Robot
2023-05-04 09:34:01 -04:00
committed by GitHub
2 changed files with 10 additions and 1 deletions

View File

@ -483,7 +483,7 @@ func cliOpts(cc handlers.CreateContainerConfig, rtc *config.Config) (*entities.C
// This also handles volumes duplicated between cc.HostConfig.Mounts and
// cc.Volumes, as seen in compose v2.0.
for vol := range cc.Volumes {
if _, ok := volDestinations[filepath.Clean(vol)]; ok {
if _, ok := volDestinations[vol]; ok {
continue
}
cliOpts.Volume = append(cliOpts.Volume, vol)

View File

@ -357,6 +357,15 @@ t GET containers/$cid/json 200 \
t DELETE containers/$cid?v=true 204
# Test Volumes with bind mount, for some reason docker-py sets this #18454
t POST containers/create Image=$IMAGE Volumes='{"/test/":{}}' HostConfig='{"Binds":["/tmp:/test/:ro"]}' 201 \
.Id~[0-9a-f]\\{64\\}
cid=$(jq -r '.Id' <<<"$output")
t GET containers/$cid/json 200 \
.Mounts[0].Destination="/test/"
t DELETE containers/$cid?v=true 204
# test port mapping
podman run -d --rm --name bar -p 8080:9090 $IMAGE top