private String checkForEmulation() {
        try {
            DockerClient dockerClient = DockerClientFactory.instance().client();
            String imageId = getContainerInfo().getImageId();
            String imageArch = dockerClient.inspectImageCmd(imageId).exec().getArch();
            String serverArch = dockerClient.versionCmd().exec().getArch();

            if (!serverArch.equals(imageArch)) {
                return (
                    "The architecture '" +
                    imageArch +
                    "' for image '" +
                    getDockerImageName() +
                    "' (ID " +
                    imageId +
                    ") does not match the Docker server architecture '" +
                    serverArch +
                    "'. This will cause the container to execute much more slowly due to emulation and may lead to timeout failures."
                );
            }
        } catch (Exception archCheckException) {
            // ignore any exceptions since this is just used for a log message
        }
        return null;
    }
Wait until the container has started. The default implementation simply
waits for a port to start listening; other implementations are available
as implementations of {@link WaitStrategy}

@see #waitingFor(WaitStrategy)
core/src/main/java/org/testcontainers/containers/GenericContainer.java