Docker: Enable API

From wiki.jacobjohns.com

Enable Docker API

  1. Edit the docker.service: sudo systemctl edit docker.service
    • Add the below above the '### Lines below this comment will be discarded line':
 [Service]  
 ExecStart=   
 ExecStart=/usr/bin/dockerd

        2. Create /etc/docker/daemon.json with the below:

 {     
   "hosts": ["unix:///var/run/docker.sock", "tcp://<HostIP>:2375"]   
 }

        3. Restart docker: systemctl restart docker

Securing Docker API

        1. To add tls and secure the API create certs for the host, store them, and add them to the daemon.json file as the below:

 {
   "hosts": ["unix:///var/run/docker.sock", "tcp://10.1.31.100:2375"],
   "tls": true,
   "tlscacert": "/server/config/docker-certs/rootCA.pem",
   "tlscert": "/server/config/docker-certs/tndocker.fwe.com.crt",
   "tlskey": "/server/config/docker-certs/tndocker.fwe.com.key",
   "tlsverify": true
 }

        2. Verify the file permissions on the certificate path or set with chmod 700 <PathToCerts>