Avant de commencer, vérifiez l'IP de votre machine au sein de votre réseau :
$ ifconfig
Accédez au fichier TCPClient.Dockerfile
et remplacez l'adresse HOST_TCP_SERVER
par votre IP, ligne 7.
Faites de même pour le fichier UDPClient.Dockerfile
et remplacez l'adresse HOST_UDP_SERVER
par votre IP, ligne 7.
Ici, il sera expliqué comment exécuter le serveur et le client TCP.
Pour démarrer le conteneur qui sera chargé d'exécuter le serveur, exécutez les commandes suivantes :
sd@sd:~ $ cd tcp/
sd@sd:~ $ docker build -t tcp-server -f TCPServer.Dockerfile .
sd@sd:~ $ docker run -d -p 12345:12345 tcp-server:latest
-d
entraînera l'exécution du conteneur en mode detached
.-p 12345:12345:
permet à Docker d'exposer le port 12345
du conteneur sur votre ordinateur, afin que le service soit visible via d'autres interfaces réseau de votre machine. Pour démarrer le conteneur qui sera chargé d'exécuter le rôle client, exécutez les commandes suivantes :
sd@sd:~ $ cd tcp/
sd@sd:~ $ docker build -t tcp-client -f TCPClient.Dockerfile .
sd@sd:~ $ docker run tcp-client:latest
client
se connectera uniquement à notre serveur précédemment exécuté, il n'exposera aucune ressource. Et comme il n’expose aucune ressource, aucun port n’est exposé par ce conteneur.Une fois exécuté, ce conteneur doit produire une sortie similaire à celle-ci :
Time: 0.735 m/s
Time: 0.208 m/s
Time: 0.278 m/s
Time: 0.210 m/s
Time: 0.311 m/s
Time: 0.221 m/s
Time: 0.271 m/s
Time: 0.225 m/s
Time: 0.106 m/s
Time: 0.173 m/s
Tempo médio: 0.274 m/s
Desvio padrão: 0.172
Tempo máximo: 0.735 m/s
Tempo mínimo: 0.106 m/s
Ici, il sera expliqué comment exécuter le serveur et le client UDP.
Pour démarrer le conteneur qui sera chargé d'exécuter le serveur, exécutez les commandes suivantes :
sd@sd:~ $ cd udp/
sd@sd:~ $ docker build -t udp-server -f UDPServer.Dockerfile .
sd@sd:~ $ docker run -d -p 54321:54321/udp udp-server:latest
-d
entraînera l'exécution du conteneur en mode detached
.-p 54321:54321/udp
permet à Docker d'exposer le port 54321
du conteneur à votre ordinateur, de sorte que le service sera visible via d'autres interfaces réseau de votre machine.-p 54321:54321/udp
, nous utilisons /udp
, cela est nécessaire car, par défaut, docker maintient une communication TCP
et dans ce cas nous avons besoin qu'il s'agisse d'une communication UDP
. Pour démarrer le conteneur qui sera chargé d'exécuter le rôle client, exécutez les commandes suivantes :
sd@sd:~ $ cd udp/
sd@sd:~ $ docker build -t udp-client -f UDPClient.Dockerfile .
sd@sd:~ $ docker run udp-client:latest
client
se connectera uniquement à notre serveur précédemment exécuté, il n'exposera aucune ressource. Et comme il n’expose aucune ressource, aucun port n’est exposé par ce conteneur.Une fois exécuté, ce conteneur doit produire une sortie similaire à celle-ci :
From server: Hi, Client. Ok!
Time: 0.174 m/s
From server: Hi, Client. Ok!
Time: 0.116 m/s
From server: Hi, Client. Ok!
Time: 0.086 m/s
From server: Hi, Client. Ok!
Time: 0.080 m/s
From server: Hi, Client. Ok!
Time: 0.074 m/s
From server: Hi, Client. Ok!
Time: 0.091 m/s
From server: Hi, Client. Ok!
Time: 0.065 m/s
From server: Hi, Client. Ok!
Time: 0.098 m/s
From server: Hi, Client. Ok!
Time: 0.081 m/s
From server: Hi, Client. Ok!
Time: 0.107 m/s
Tempo médio: 0.097 m/s
Desvio padrão: 0.031
Tempo máximo: 0.174 m/s
Tempo mínimo: 0.065 m/s