Connect to another host with your docker client, without modifying your local Docker installation
This is how to connect to another host with your docker client, without modifying your local Docker installation or when you don't have a local Docker installation.
First be sure to enable the Docker Remote API on the remote host.
You can also configure the Docker engine to expose the remote API. Read Enable Docker Remote API with TLS client verification for more information.
If you don't have a local Docker installation, you need to download the docker client, which is a simple executable.
You find the docker client for Linux, MacOS and Windows on download.docker.com.
Take a file of the
static directory, e.g. linux/static/stable/x86_64/docker-17.12.0-ce.tgz, and unzip it. You only need the
As linux user you can also use this tiny script to download it.
For HTTP connection set the following alias:
alias dockerx="docker -H=your-remote-server.org:2375"
For HTTPS connection set the following alias:
alias dockerx="docker --tlsverify -H=your-remote-server.org:2376 --tlscacert=/home/me/docker-tls/ca.pem --tlscert=/home/me/docker-tls/cert.pem --tlskey=/home/me/docker-tls/key.pem"
Create a file "docker.bat".
For HTTP connection the content of the bat file should be:
docker -H=your-remote-server.org:2375 %*
For HTTPS connection the content of the bat file should be:
docker --tlsverify -H=your-remote-server.org:2376 --tlscacert=C:\users\me\docker-tls\ca.pem --tlscert=C:\users\me\docker-tls\cert.pem --tlskey=C:\users\me\docker-tls\key.pem %*
Docker's Remote API client authentication works with certificates. See Protect the Docker daemon socket or my Enable Docker Remote API with TLS client verification on how to create server and client certificates.
Copy ca.pem (CA certificate), cert.pem (client certificate) and key.pem (client's private key) in
Now you can run commands on the remote machine with
dockerx (Linux) or
docker.bat (Windows) instead of