[英]Can't Get Docker Image
我有 5 个春季批次测试,我使用 testcontainers 在 Jenkins 管道上运行。 我仅在其中一项测试中收到以下错误:
12:51:53 17 Mar 2020;17:51:41.498 [user:] [request:] [main] INFO
12:51:53 o.testcontainers.DockerClientFactory - Ryuk started - will monitor and terminate Testcontainers containers on JVM exit
12:51:53 [37m[1mℹ︎ Checking the system...[0m[0m
12:51:53 [32m✔ Docker version should be at least 1.6.0[0m
12:51:53 17 Mar 2020;17:51:41.508 [user:] [request:] [main] DEBUG
12:51:53 c.g.d.core.command.AbstrDockerCmd - Cmd: f6fc0588843eb76a458bdc25cdc942fed474945aa3cfe7b635220dd1935dbfaa,<null>,true,<null>,<null>,<null>,<null>,{df,-P},<null>,<null>,com.github.dockerjava.core.exec.ExecCreateCmdExec@5cbe877d
12:51:53 17 Mar 2020;17:51:41.644 [user:] [request:] [tc-okhttp-stream-2116511124] DEBUG
12:51:53 c.g.d.c.c.ExecStartResultCallback - STDOUT: Filesystem 1024-blocks Used Available Capacity Mounted on
12:51:53 overlay 314561516 62506464 252055052 20% /
12:51:53 tmpfs 65536 0 65536 0% /dev
12:51:53 tmpfs 8132940 0 8132940 0% /sys/fs/cgroup
12:51:53 shm 65536 0 65536 0% /dev/shm
12:51:53 /dev/xvdg1 314561516 62506464 252055052 20% /etc/resolv.conf
12:51:53 /dev/xvdg1 314561516 62506464 252055052 20% /etc/hostname
12:51:53 /dev/xvdg1 314561516 62506464 252055052 20% /etc/hosts
12:51:53 tmpfs 8132940 25132 8107808 0% /run/docker.sock
12:51:53 tmpfs 8132940 0 8132940 0% /proc/acpi
12:51:53 tmpfs 65536 0 65536 0% /proc/kcore
12:51:53 tmpfs 65536 0 65536 0% /proc/keys
12:51:53 tmpfs 65536 0 65536 0% /proc/timer_list
12:51:53 tmpfs 65536 0 65536 0% /proc/timer_stats
12:51:53 tmpfs 65536 0 65536 0% /proc/sched_debug
12:51:53 tmpfs 8132940 0 8132940 0% /proc/scsi
12:51:53 tmpfs 8132940 0 8132940 0% /sys/firmware
12:51:53 [32m✔ Docker environment should have more than 2GB free disk space[0m
12:51:53 17 Mar 2020;17:51:41.690 [user:] [request:] [main] DEBUG
12:51:53 c.g.d.core.command.AbstrDockerCmd - Cmd: ListImagesCmdImpl[imageNameFilter=<null>,showAll=false,filters=com.github.dockerjava.core.util.FiltersBuilder@0,execution=com.github.dockerjava.core.exec.ListImagesCmdExec@3ecd267f]
12:51:53 [ERROR] Tests run: 1, Failures: 0, Errors: 1, Skipped: 0, Time elapsed: 1.915 s <<< FAILURE! - in com.oranj.snowflake.account.VendorAccountTransactionSnowflakeConfigurationTest
12:51:53 [ERROR] com.oranj.snowflake.account.VendorAccountTransactionSnowflakeConfigurationTest Time elapsed: 1.914 s <<< ERROR!
12:51:53 org.testcontainers.containers.ContainerLaunchException: Container startup failed
12:51:53 Caused by: org.testcontainers.containers.ContainerFetchException: Can't get Docker image: RemoteDockerImage(imageNameFuture=java.util.concurrent.CompletableFuture@37ddb69a[Completed normally], imagePullPolicy=DefaultPullPolicy(), dockerClient=LazyDockerClient.INSTANCE)
12:51:53 Caused by: java.lang.IllegalStateException: Duplicate key ImageData(createdAt=1970-01-18T18:51:50.819Z)
12:51:53
似乎当 JVM 终止时,它本身并没有正确清理。 因此,当它再次启动时,它试图启动容器,但它已经在那里看到了一个重复的容器。 这是我多次重新运行测试的时候。 我无法在本地 mac os 上重现此内容。
环境:
这已在以下 Github 问题中解决!
https://github.com/testcontainers/testcontainers-java/issues/2431
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.