luketn/docker-k6-grafana-influxdb

Demonstrates how to run load tests with containerised instances of K6, Grafana and InfluxDB

179

stars

41

commits

JavaScript

primary language

Apr 2, 2025

updated

README

docker-k6-grafana-influxdb

Demonstrates how to run load tests with containerised instances of K6, Grafana and InfluxDB.

Article

This is the accompanying source code for the following article. Please read for a detailed breakdown of the code and how K6, Grafana and InfluxDB work together using Docker Compose:

https://medium.com/swlh/beautiful-load-testing-with-k6-and-docker-compose-4454edb3a2e3

Dashboards

The dashboard in /dashboards is adapted from the excellent K6 / Grafana dashboard here: https://grafana.com/grafana/dashboards/2587

There are only two small modifications:

  • the data source is configured to use the docker created InfluxDB data source
  • the time period is set to now-15m, which I feel is a better view for most tests

Scripts

The script here is an example of a low Virtual User (VU) load test of the excellent Star Wars API: https://swapi.dev/

If you're tinkering with the script, it is just a friendly open source API, be gentle!

Common errors

If you encounter the error below:

ERRO[0000] The moduleSpecifier "C:/Program Files/Git/script/load.js" couldn't be found on local disk. Make sure that you've specified the right path to the file. If you're running k6 using the Docker image make sure you have mounted the local directory (-v /local/path/:/inside/docker/path) containing your script and modules so that they're accessible by k6 from inside of the container, see https://grafana.com/docs/k6/latest/using-k6/modules/#using

Use the command below (adding double slash) to run load.js:

``` docker compose run k6 run //scripts//load.js ```

Contributors

luketn

39 commits

bishop254

1 commits

luketn/docker-k6-grafana-influxdb

Demonstrates how to run load tests with containerised instances of K6, Grafana and InfluxDB

179

stars

41

commits

JavaScript

primary language

Apr 2, 2025

updated

README

docker-k6-grafana-influxdb

Demonstrates how to run load tests with containerised instances of K6, Grafana and InfluxDB.

Article

This is the accompanying source code for the following article. Please read for a detailed breakdown of the code and how K6, Grafana and InfluxDB work together using Docker Compose:

https://medium.com/swlh/beautiful-load-testing-with-k6-and-docker-compose-4454edb3a2e3

Dashboards

The dashboard in /dashboards is adapted from the excellent K6 / Grafana dashboard here: https://grafana.com/grafana/dashboards/2587

There are only two small modifications:

  • the data source is configured to use the docker created InfluxDB data source
  • the time period is set to now-15m, which I feel is a better view for most tests

Scripts

The script here is an example of a low Virtual User (VU) load test of the excellent Star Wars API: https://swapi.dev/

If you're tinkering with the script, it is just a friendly open source API, be gentle!

Common errors

If you encounter the error below:

ERRO[0000] The moduleSpecifier "C:/Program Files/Git/script/load.js" couldn't be found on local disk. Make sure that you've specified the right path to the file. If you're running k6 using the Docker image make sure you have mounted the local directory (-v /local/path/:/inside/docker/path) containing your script and modules so that they're accessible by k6 from inside of the container, see https://grafana.com/docs/k6/latest/using-k6/modules/#using

Use the command below (adding double slash) to run load.js:

``` docker compose run k6 run //scripts//load.js ```

Contributors

luketn

39 commits

bishop254

1 commits

Languages

JavaScript

52.0%

PowerShell

24.7%

Shell

23.2%