Grafana startup failure due to permission errors after Sourcegraph upgrade


In this knowledge-sharing article, we will explore an issue that can arise after upgrading the Sourcegraph deployment on Docker or Docker-Compose. Specifically, we will focus on the challenges faced with the Grafana container, which encounters problems while creating mounts.


Issue Description:

After upgrading, you might notice error messages when inspecting the Docker logs for the Grafana container. These error messages indicate permission-related issues with the mounts. The specific errors are as follows:

GF_PATHS_CONFIG='/sg_config_grafana/grafana.ini' is not readable.

GF_PATHS_DATA='/var/lib/grafana' is not writable.

GF_PATHS_HOME='/usr/share/grafana' is not readable.

You may have issues with file permissions, more information here:

runtime/cgo: pthread_create failed: Operation not permitted

SIGABRT: abort

The above error indicates that the Grafana container is unable to access the mounted volumes due to permission issues.

Here's a step-by-step troubleshooting guide to address these issues:

  • Ensure the mounted volumes exist on the host and have the correct permissions. The /var/lib/grafana directory should be writable by the Grafana user inside the container.
  • Double-check that the volume mounts are correct in your docker run command or docker-compose file. The paths should match what's expected by the Grafana image.

  • Review the Logs, leading up to the abort error for any other clues.

  • Most Importantly, Ensure that you are using the recommended Docker and Docker-Compose versions. The minimum recommended versions are Docker v20.10.0 and Docker-Compose v1.29.0. Refer to the sourcegraph documentation for version compatibility and upgrade accordingly.


By following these step-by-step troubleshooting measures, you can effectively resolve mounting and runtime issues encountered by the Grafana container after upgrading Sourcegraph on Docker or Docker-Compose. Ensuring the correct permissions, verifying volume mounts, examining logs, and using the appropriate Docker versions are crucial steps in restoring the smooth functionality of the Grafana container.

Was this article helpful?
0 out of 0 found this helpful

Articles in this section