Interface DockerCompose


public interface DockerCompose
Provides a high-level API to work with Docker compose.
Since:
3.1.0
Author:
Moritz Halbritter, Andy Wilkinson, Phillip Webb
  • Field Details

    • FORCE_SHUTDOWN

      static final Duration FORCE_SHUTDOWN
      Timeout duration used to request a forced shutdown.
  • Method Details

    • up

      void up(LogLevel logLevel)
      Run docker compose up to startup services. Waits until all contains are started and healthy.
      Parameters:
      logLevel - the log level used to report progress
    • down

      void down(Duration timeout)
      Run docker compose down to shutdown any running services.
      Parameters:
      timeout - the amount of time to wait or FORCE_SHUTDOWN to shutdown without waiting.
    • start

      void start(LogLevel logLevel)
      Run docker compose start to startup services. Waits until all contains are started and healthy.
      Parameters:
      logLevel - the log level used to report progress
    • stop

      void stop(Duration timeout)
      Run docker compose stop to shutdown any running services.
      Parameters:
      timeout - the amount of time to wait or FORCE_SHUTDOWN to shutdown without waiting.
    • hasDefinedServices

      boolean hasDefinedServices()
      Return if services have been defined in the DockerComposeFile for the active profiles.
      Returns:
      true if services have been defined
      See Also:
    • hasRunningServices

      boolean hasRunningServices()
      Return if services defined in the DockerComposeFile for the active profile are running.
      Returns:
      true if services are running
      See Also:
    • getRunningServices

      List<RunningService> getRunningServices()
      Return the running services for the active profile, or an empty list if no services are running.
      Returns:
      the list of running services
    • get

      static DockerCompose get(DockerComposeFile file, String hostname, Set<String> activeProfiles)
      Factory method used to create a DockerCompose instance.
      Parameters:
      file - the docker compose file
      hostname - the hostname used for services or null if the hostname should be deduced
      activeProfiles - a set of the profiles that should be activated
      Returns:
      a DockerCompose instance