The following config will guide you through a process of changing the docker's default /var/lib/docker storage disk space to another directory. There are various reasons why you may want to change docker's default directory from which the most obvious could be that ran out of disk space. The following guide should work for both Ubuntu and Debian Linux or any other systemd system. Make sure to follow this guide in the exact order of execution.

Let's get started by modifying systemd's docker start up script. Open file /lib/systemd/system/docker.service with your favorite text editor and replace the following line where /new/path/docker is a location of your new chosen docker directory:
FROM:
ExecStart=/usr/bin/docker daemon -H fd://
TO:
ExecStart=/usr/bin/docker daemon -g /new/path/docker -H fd://
When ready stop docker service:
# systemctl stop docker


It is important here that you have completely stopped docker daemon. The following linux command will yield no output only if docker service is stopped:
# ps aux | grep -i docker | grep -v grep
If no output has been produced by the above command, reload systemd daemon:
# systemctl daemon-reload
Once this is done create a new directory you specified above and optionally rsync current docker data to a new directory:
# mkdir /new/path/docker
# rsync -aqxP /var/lib/docker/ /new/path/docker
At this stage we can safely start docker daemon:
# systemctl start docker
Confirm that docker runs within a new data directory:
#  ps aux | grep -i docker | grep -v grep
root      2095  0.2  0.4 664472 36176 ?        Ssl  18:14   0:00 /usr/bin/docker daemon -g  /new/path/docker -H fd://
root      2100  0.0  0.1 360300 10444 ?        Ssl  18:14   0:00 docker-containerd -l /var/run/docker/libcontainerd/docker-containerd.sock --runtime docker-runc
All done.