Class MinioContainer

java.lang.Object
org.testcontainers.containers.FailureDetectingExternalResource
org.testcontainers.containers.GenericContainer<MinioContainer>
org.apache.polaris.test.minio.MinioContainer
All Implemented Interfaces:
AutoCloseable, MinioAccess, org.junit.rules.TestRule, org.testcontainers.containers.Container<MinioContainer>, org.testcontainers.containers.ContainerState, org.testcontainers.containers.traits.LinkableContainer, org.testcontainers.containers.wait.strategy.WaitStrategyTarget, org.testcontainers.lifecycle.Startable

public final class MinioContainer extends org.testcontainers.containers.GenericContainer<MinioContainer> implements MinioAccess, AutoCloseable
  • Nested Class Summary

    Nested classes/interfaces inherited from interface org.testcontainers.containers.Container

    org.testcontainers.containers.Container.ExecResult
  • Field Summary

    Fields inherited from class org.testcontainers.containers.GenericContainer

    CONTAINER_RUNNING_TIMEOUT_SEC, dependencies, dockerClient, INTERNAL_HOST_HOSTNAME, waitStrategy

    Fields inherited from interface org.testcontainers.containers.ContainerState

    STATE_HEALTHY
  • Constructor Summary

    Constructors
    Constructor
    Description
     
    MinioContainer(String image, String accessKey, String secretKey, String bucket)
     
  • Method Summary

    Modifier and Type
    Method
    Description
     
     
    void
     
    Properties needed by Apache Hadoop to access this instance.
    Host and port, separated by ':'.
    Properties needed by Apache Iceberg to access this instance.
    S3 scheme URI including the bucket to access the given path.
    s3BucketUri(String scheme, String path)
     
    software.amazon.awssdk.services.s3.S3Client
     
    HTTP protocol endpoint.
     
    void
     
    void
     
     

    Methods inherited from class org.testcontainers.containers.GenericContainer

    addEnv, addExposedPort, addExposedPorts, addFileSystemBind, addFixedExposedPort, addFixedExposedPort, addLink, apply, canBeReused, configure, containerIsCreated, containerIsStarted, containerIsStarted, containerIsStarting, containerIsStarting, containerIsStopped, containerIsStopping, copyFileFromContainer, createVolumeDirectory, dependsOn, dependsOn, dependsOn, doStart, equals, failed, finished, getBinds, getCommandParts, getContainerId, getContainerInfo, getContainerName, getCopyToFileContainerPathMap, getCreateContainerCmdModifiers, getDependencies, getDockerClient, getDockerImageName, getEnv, getEnvMap, getExposedPorts, getExtraHosts, getImage, getIpAddress, getLabels, getLinkedContainers, getLivenessCheckPort, getLivenessCheckPortNumbers, getLivenessCheckPorts, getLogConsumers, getNetwork, getNetworkAliases, getNetworkMode, getPortBindings, getShmSize, getStartupAttempts, getStartupCheckStrategy, getTestHostIpAddress, getTmpFsMapping, getVolumesFroms, getWaitStrategy, getWorkingDirectory, hashCode, isHostAccessible, isPrivilegedMode, isShouldBeReused, logger, setBinds, setCommand, setCommand, setCommandParts, setContainerDef, setCopyToFileContainerPathMap, setDockerImageName, setEnv, setExposedPorts, setExtraHosts, setHostAccessible, setImage, setLabels, setLinkedContainers, setLogConsumers, setNetwork, setNetworkAliases, setNetworkMode, setPortBindings, setPrivilegedMode, setShmSize, setStartupAttempts, setStartupCheckStrategy, setTmpFsMapping, setVolumesFroms, setWaitStrategy, setWorkingDirectory, starting, succeeded, toString, waitingFor, waitUntilContainerStarted, withAccessToHost, withClasspathResourceMapping, withClasspathResourceMapping, withCommand, withCommand, withCopyFileToContainer, withCopyToContainer, withCreateContainerCmdModifier, withEnv, withEnv, withExposedPorts, withExtraHost, withFileSystemBind, withImagePullPolicy, withLabel, withLabels, withLogConsumer, withMinimumRunningDuration, withNetwork, withNetworkAliases, withNetworkMode, withPrivilegedMode, withReuse, withSharedMemorySize, withStartupAttempts, withStartupCheckStrategy, withStartupTimeout, withTmpFs, withVolumesFrom, withWorkingDirectory

    Methods inherited from class java.lang.Object

    clone, finalize, getClass, notify, notifyAll, wait, wait, wait

    Methods inherited from interface org.testcontainers.containers.Container

    addFileSystemBind, followOutput, followOutput, self, withEnv, withFileSystemBind

    Methods inherited from interface org.testcontainers.containers.ContainerState

    copyFileFromContainer, copyFileToContainer, copyFileToContainer, execInContainer, execInContainer, execInContainer, execInContainer, execInContainerWithUser, execInContainerWithUser, getBoundPortNumbers, getContainerIpAddress, getCurrentContainerInfo, getFirstMappedPort, getHost, getLogs, getLogs, getMappedPort, isCreated, isHealthy, isRunning

    Methods inherited from interface org.apache.polaris.test.minio.MinioAccess

    s3put
  • Constructor Details

    • MinioContainer

      public MinioContainer()
    • MinioContainer

      public MinioContainer(String image, String accessKey, String secretKey, String bucket)
  • Method Details

    • withRegion

      public MinioContainer withRegion(String region)
    • hostPort

      public String hostPort()
      Description copied from interface: MinioAccess
      Host and port, separated by ':'.
      Specified by:
      hostPort in interface MinioAccess
    • accessKey

      public String accessKey()
      Specified by:
      accessKey in interface MinioAccess
    • secretKey

      public String secretKey()
      Specified by:
      secretKey in interface MinioAccess
    • bucket

      public String bucket()
      Specified by:
      bucket in interface MinioAccess
    • s3endpoint

      public String s3endpoint()
      Description copied from interface: MinioAccess
      HTTP protocol endpoint.
      Specified by:
      s3endpoint in interface MinioAccess
    • s3Client

      public software.amazon.awssdk.services.s3.S3Client s3Client()
      Specified by:
      s3Client in interface MinioAccess
    • icebergProperties

      public Map<String,String> icebergProperties()
      Description copied from interface: MinioAccess
      Properties needed by Apache Iceberg to access this instance.
      Specified by:
      icebergProperties in interface MinioAccess
    • hadoopConfig

      public Map<String,String> hadoopConfig()
      Description copied from interface: MinioAccess
      Properties needed by Apache Hadoop to access this instance.
      Specified by:
      hadoopConfig in interface MinioAccess
    • s3BucketUri

      public URI s3BucketUri(String path)
      Description copied from interface: MinioAccess
      S3 scheme URI including the bucket to access the given path.
      Specified by:
      s3BucketUri in interface MinioAccess
    • s3BucketUri

      public URI s3BucketUri(String scheme, String path)
    • start

      public void start()
      Specified by:
      start in interface org.testcontainers.lifecycle.Startable
      Overrides:
      start in class org.testcontainers.containers.GenericContainer<MinioContainer>
    • close

      public void close()
      Specified by:
      close in interface AutoCloseable
      Specified by:
      close in interface org.testcontainers.lifecycle.Startable
    • stop

      public void stop()
      Specified by:
      stop in interface org.testcontainers.lifecycle.Startable
      Overrides:
      stop in class org.testcontainers.containers.GenericContainer<MinioContainer>