Skip to content

Latest commit

 

History

History
38 lines (29 loc) · 1.56 KB

README.md

File metadata and controls

38 lines (29 loc) · 1.56 KB

Mini Docker Based System


Mini Docker Based System project contains 3 modules:

  1. Password module searches inside a mounted folder (theHarvester) containing multiple files and folders, and extract the password contained in one of them (we will search for the word password to find it).
  2. Analyze module analyzes the files as so:
    1. Looks for the number of files from each type (e.g. .py, .txt, etc...) in the mounted folder (theHarvester).
    2. Lists the top 10 files sorted by size.
  3. Controller module functions as a controller whose job is to execute the other modules and output the results (from both modules) to a JSON file.

All the containers runs in a docker compose environment.

Each container has its own network, generated by running the initialize_script.sh file and the communication between the modules is conducted through a message broker container (RabbitMQ), that knows all module's networks.

NOTE:

  • All the modules are in different networks.
  • The folders to analyze/search are available in the containers by volumes.

How to run the services:

  • Clone the project

  • By writing the command below in the terminal we:

    • create the networks for the modules.
    • create Rabbitmq volume for Rabbitmq service.
    • build the module's images:
     sh initialize_script.sh
    
  • Run docker compose using the command:

    docker compose up
    

Now the Compose environment is up, and the services run automatically. The output should appear in a JSON file inside the controller_module/output/ directory.