Connect to remote docker host

How can I connect my local docker client to a remote docker host on my network?

I have a ubuntu server box on my local network on which I intend to setup my containers. However, at this point, I have to SSH into that box from my development box manually and then run the containers.

I attempted to set the $DOCKER_HOST environment variable on my development box and also ensured that the 2376 port is opened on the docker host box. But when I tried to run the docker commands, but I keep getting the message:

Cannot connect to the Docker daemon. Is the docker daemon running on this host?

P.S. Is there a way to configure my docker host to bind the docker server to a different hostname and port?

Ensure that the -H flag for docker daemon running on the remote instance is set to whatever you desire (e.g. 0.0.0.0:2376). You will likely have to edit /etc/systemd/system/docker.service and restart the daemon for this. The daemon only listens on a UNIX socket at /var/run/docker.sock by default.

If you expose the API on the public internet (or even in a shared local Intranet) please use TLS. Otherwise anyone with access to the Docker API will have effective root prvileges on that server.

i am using jenkins server on cloud machine and configured yet another plugin
i want to add docker as slave in jenkins .How to use this ?

previously ,configured jenkins and docker in same machine and its working fine .

Hi, does this require the option --tlsverify or is --tls sufficient? Will my docker daemon accept connections using any certificate when using --tls instead of --tlsverify?

In order to connect to a remote Daemon running on any server machine please follow the below steps.
Identify the Host machine where the Docker Client is running.
If the Docker Client Machine is a Linux Machine. Please run the below command that connects to the remote docker Daemon.

export DOCKER_HOST=ssh://administrator@10.242.41.222

The above command will establish the ssh connection to the remote machine and all the docker command get executed on the remote machine.

If the Docker Client Machine is a Windows Machine. Please run the below command to obtain the same result as above.

$env:DOCKER_HOST="ssh://administrator@10.242.41.222"

If one wants the docker client to use the old Docker daemon running on the client server. Please reset the value of the environment variable to empty.

In WIN : $env:DOCKER_HOST=" "
In Linux : export DOCKER_HOST=’ ’