Package io.github.bonigarcia.wdm.docker
Class DockerService
- java.lang.Object
-
- io.github.bonigarcia.wdm.docker.DockerService
-
public class DockerService extends Object
Docker Service.- Since:
- 5.0.0
- Author:
- Boni Garcia
-
-
Constructor Summary
Constructors Constructor Description DockerService(Config config, HttpClient httpClient, ResolutionCache resolutionCache)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
close()
String
execCommandInContainer(String containerId, String... command)
String
getAddress(String containerId, String network)
String
getBindPort(String containerId, String exposed)
String
getDefaultHost()
com.github.dockerjava.api.DockerClient
getDockerClient()
String
getDockerImage(String browserName, String browserVersion, boolean androidEnabled)
String
getDockerImageFormat(String browserVersion, boolean androidEnabled)
String
getGateway(String containerId, String network)
String
getHost(String containerId, String network)
String
getImageVersionFromDockerHub(DriverManagerType driverManagerType, String cacheKey, String browserName, String browserVersion, boolean androidEnabled)
int
getMinusIndex(String browserVersion)
Path
getRecordingPath(DockerContainer browserContainer)
String
getVersionFromImage(String dockerImage)
boolean
isBrowserVersionBetaOrDev(String browserVersion)
boolean
isBrowserVersionLatestMinus(String browserVersion)
boolean
isBrowserVersionWildCard(String browserVersion)
boolean
isRunningInsideDocker()
void
pullImageIfNecessary(String cacheKey, String imageId, String imageVersion)
void
removeContainer(String containerId)
DockerContainer
startBrowserContainer(String dockerImage, String cacheKey, String browserVersion, boolean androidEnabled)
String
startContainer(DockerContainer dockerContainer)
DockerContainer
startNoVncContainer(String dockerImage, String cacheKey, String browserVersion, DockerContainer browserContainer)
DockerContainer
startRecorderContainer(String dockerImage, String cacheKey, String recorderVersion, DockerContainer browserContainer)
void
stopAndRemoveContainer(DockerContainer dockerContainer)
void
stopContainer(String containerId)
void
updateDockerClient(String dockerHost)
-
-
-
Constructor Detail
-
DockerService
public DockerService(Config config, HttpClient httpClient, ResolutionCache resolutionCache)
-
-
Method Detail
-
isRunningInsideDocker
public boolean isRunningInsideDocker()
-
getDefaultHost
public String getDefaultHost()
-
startContainer
public String startContainer(DockerContainer dockerContainer) throws com.github.dockerjava.api.exception.DockerException
- Throws:
com.github.dockerjava.api.exception.DockerException
-
getBindPort
public String getBindPort(String containerId, String exposed) throws com.github.dockerjava.api.exception.DockerException
- Throws:
com.github.dockerjava.api.exception.DockerException
-
pullImageIfNecessary
public void pullImageIfNecessary(String cacheKey, String imageId, String imageVersion) throws com.github.dockerjava.api.exception.DockerException
- Throws:
com.github.dockerjava.api.exception.DockerException
-
stopAndRemoveContainer
public void stopAndRemoveContainer(DockerContainer dockerContainer)
-
stopContainer
public void stopContainer(String containerId) throws com.github.dockerjava.api.exception.DockerException
- Throws:
com.github.dockerjava.api.exception.DockerException
-
removeContainer
public void removeContainer(String containerId) throws com.github.dockerjava.api.exception.DockerException
- Throws:
com.github.dockerjava.api.exception.DockerException
-
close
public void close() throws IOException
- Throws:
IOException
-
updateDockerClient
public void updateDockerClient(String dockerHost)
-
getImageVersionFromDockerHub
public String getImageVersionFromDockerHub(DriverManagerType driverManagerType, String cacheKey, String browserName, String browserVersion, boolean androidEnabled)
-
getMinusIndex
public int getMinusIndex(String browserVersion)
-
getDockerImage
public String getDockerImage(String browserName, String browserVersion, boolean androidEnabled)
-
getDockerImageFormat
public String getDockerImageFormat(String browserVersion, boolean androidEnabled)
-
isBrowserVersionWildCard
public boolean isBrowserVersionWildCard(String browserVersion)
-
isBrowserVersionBetaOrDev
public boolean isBrowserVersionBetaOrDev(String browserVersion)
-
isBrowserVersionLatestMinus
public boolean isBrowserVersionLatestMinus(String browserVersion)
-
startNoVncContainer
public DockerContainer startNoVncContainer(String dockerImage, String cacheKey, String browserVersion, DockerContainer browserContainer)
-
startBrowserContainer
public DockerContainer startBrowserContainer(String dockerImage, String cacheKey, String browserVersion, boolean androidEnabled)
-
startRecorderContainer
public DockerContainer startRecorderContainer(String dockerImage, String cacheKey, String recorderVersion, DockerContainer browserContainer)
-
getRecordingPath
public Path getRecordingPath(DockerContainer browserContainer)
-
getDockerClient
public com.github.dockerjava.api.DockerClient getDockerClient()
-
-