@@ -11,7 +11,7 @@ This project implements a distributed algorithm for communication between nodes
## Description
Each node in the network has a configuration file that lists its neighbors.
The exercise involves the following steps, [file](./sock.py):
The exercise involves the following steps, [main file](./sock.py):
1. Initalisation:
- Each node reads its neighbors file.
- Each node starts a server socket to listen for incoming connections
...
...
@@ -21,8 +21,19 @@ The exercise involves the following steps, [file](./sock.py):
- The algorithm runs for a total of *N* iterations
- Each node logs its activities and messages
## Neighbors Configuration
The [neighbors configuration](./neighbors/) is a directory that contains the neighbors files for all the nodes. Ensure that you have a corresponding number of neighbor files in the neighbors directory, named neighbors0.txt, neighbors1.txt, etc.
## Dockerfile
Once your code is developed, it is time to build the container image, [DockerFile](./Dockerfile)
## Local Deployment
For local deployment, you can use the [script](./generate-docker-compose.py) to generate a Docker Compose file. This script takes the number of nodes in your network as an argument and generates the Docker Compose configuration. To generate the Docker Compose file, run the [script](./generate-docker-compose.py) with the desired number of nodes:
- python generate_docker_compose.py <num_nodes>
Replace <num_nodes> with the number of nodes in your network.
##
\ No newline at end of file
## Troubleshooting
- Check the container logs
- Ensure that all environment variables are correctly set and that the neighbors' file is correctly configured.