This vignette contains short snippets of stevedore calls to perform simple tasks, alongside a docker command line equivalent.
Conventions:
stevedore docker client object has been created with docker <- stevedore::docker_client() (to avoid repetition in examples)$ to represent the unix/bash promptWith docker cli:
$ docker run --rm -p 8888:80 gplates/gwsthe -p 8888:80 publishes port 80 in the container to port 8888 on the host.
In stevedore, this can be done with:
##   container_port protocol host_ip host_port
## 1             80      tcp 0.0.0.0      8888To use a random port, omit the host portion (here 8888:) as
$ docker run --rm -p 80 gplates/gwsor, with stevedore
To determine the port you can use the ports() method
##   container_port protocol host_ip host_port
## 1             80      tcp 0.0.0.0     32771If the container declares its exposed ports using an EXPOSE <port> directive in the Dockerfile then you can automatically publish all declared ports to random host ports with -P as
$ docker run --rm -P gplates/gwsor with stevedore by using ports = TRUE
##   container_port protocol host_ip host_port
## 1             80      tcp 0.0.0.0     32772As contributed by Brian O’Meara in #44