diff --git a/tools/integration-tests/tester/framework/docker.go b/tools/integration-tests/tester/framework/docker.go
index 5fd40921b80e60e7a981bc2b492e45fc38d97d27..3bc9b7cb9b9729f78fdf923cb71728574a87fc0c 100644
--- a/tools/integration-tests/tester/framework/docker.go
+++ b/tools/integration-tests/tester/framework/docker.go
@@ -213,8 +213,11 @@ func (d *DockerContainer) Remove() error {
 
 // Stop stops a container without terminating the process.
 // The process is blocked until the container stops or the timeout expires.
-func (d *DockerContainer) Stop() error {
+func (d *DockerContainer) Stop(optionalTimeout ...time.Duration) error {
 	duration := 3 * time.Minute
+	if optionalTimeout != nil {
+		duration = optionalTimeout[0]
+	}
 	return d.client.ContainerStop(context.Background(), d.id, &duration)
 }
 
diff --git a/tools/integration-tests/tester/framework/drngnetwork.go b/tools/integration-tests/tester/framework/drngnetwork.go
index 2f3031ceab001dc7d8e415bb41dce956673cf7b5..ee05578481c5f4cf925e4d5ced715e2cfc8d78c6 100644
--- a/tools/integration-tests/tester/framework/drngnetwork.go
+++ b/tools/integration-tests/tester/framework/drngnetwork.go
@@ -93,7 +93,7 @@ func (n *DRNGNetwork) CreateMember(leader bool) (*Drand, error) {
 func (n *DRNGNetwork) Shutdown() error {
 	// stop drand members
 	for _, p := range n.members {
-		err := p.Stop()
+		err := p.Stop(5 * time.Second)
 		if err != nil {
 			return err
 		}