Spiderfoot 101 with Kali using Docker
This lab walks through some simple steps required to get the OSINT tool Spiderfoot up and running on a Kali Linux using Docker.
Spiderfoot is an application that enables you as a pentester/red teamer to collect intelligence about a given subject - email address, username, domain or IP address that may help you in planning and advancing your attacks against them.

Download Spiderfoot

Download the Spiderfoot linux package from https://www.spiderfoot.net/download/ and extract it to a location of your choice on your file system. I extracted it to /root/Downloads/spiderfoot-2.12.0-src/spiderfoot-2.12
and made it my working directory:
cd /root/Downloads/spiderfoot-2.12.0-src/spiderfoot-2.12

Upgrade PIP

You may need to upgrade the pip before it starts giving you trouble:
pip install --upgrade pip

Build Docker Image

Build the spiderfoot docker image :
docker build -t spiderfoot .
Check if the image got created successfully:
docker images
You should see the spiderfoot image creted seconds ago:

Run the Spiderfoot Docker

docker run -p 5009:5001 -d spiderfoot
The above will run previously created spiderfoot image in the background and expose a TCP port 5009 on the host computer. Any traffic sent to host:5009 will be forwarded to the port 5001 on the docker where spiderfoot is running and listening.
To check if the docker image is running, we can do:
docker ps
The below confirms the docker is indeed running the spiderfoot image and is listening on port 5001:
Below confirms that the host machine has now exposed the TCP port 5009 (which forwards traffic to the docker's port 5001):

Using Spiderfoot

Navigate to your host:5009 to access the spiderfoot UI and start a new scan:
During the scan, we can start observing various pieces of data being returned from the internet:
Drilling down to one of the above categories - DNS records: