diff --git a/bitnami/grafana/12.3/debian-12/Dockerfile b/bitnami/grafana/12.3/debian-12/Dockerfile index 10092e35e8a7..bd44d8a01505 100644 --- a/bitnami/grafana/12.3/debian-12/Dockerfile +++ b/bitnami/grafana/12.3/debian-12/Dockerfile @@ -7,13 +7,13 @@ ARG DOWNLOADS_URL="downloads.bitnami.com/files/stacksmith" ARG TARGETARCH LABEL org.opencontainers.image.base.name="docker.io/bitnami/minideb:bookworm" \ - org.opencontainers.image.created="2026-02-18T12:41:22Z" \ + org.opencontainers.image.created="2026-02-24T16:49:31Z" \ org.opencontainers.image.description="Application packaged by Broadcom, Inc." \ org.opencontainers.image.documentation="https://github.com/bitnami/containers/tree/main/bitnami/grafana/README.md" \ org.opencontainers.image.source="https://github.com/bitnami/containers/tree/main/bitnami/grafana" \ org.opencontainers.image.title="grafana" \ org.opencontainers.image.vendor="Broadcom, Inc." \ - org.opencontainers.image.version="12.3.3" + org.opencontainers.image.version="12.3.4" ENV HOME="/" \ OS_ARCH="${TARGETARCH:-amd64}" \ @@ -30,7 +30,7 @@ RUN --mount=type=secret,id=downloads_url,env=SECRET_DOWNLOADS_URL \ COMPONENTS=( \ "mysql-client-12.2.2-0-linux-${OS_ARCH}-debian-12" \ "ini-file-1.4.9-7-linux-${OS_ARCH}-debian-12" \ - "grafana-12.3.3-0-linux-${OS_ARCH}-debian-12" \ + "grafana-12.3.4-0-linux-${OS_ARCH}-debian-12" \ ) ; \ for COMPONENT in "${COMPONENTS[@]}"; do \ if [ ! -f "${COMPONENT}.tar.gz" ]; then \ @@ -48,9 +48,9 @@ RUN find / -perm /6000 -type f -exec chmod a-s {} \; || true COPY rootfs / RUN /opt/bitnami/scripts/grafana/postunpack.sh -ENV APP_VERSION="12.3.3" \ +ENV APP_VERSION="12.3.4" \ BITNAMI_APP_NAME="grafana" \ - IMAGE_REVISION="2" \ + IMAGE_REVISION="0" \ PATH="/opt/bitnami/mysql/bin:/opt/bitnami/common/bin:/opt/bitnami/grafana/bin:$PATH" EXPOSE 3000 diff --git a/bitnami/grafana/README.md b/bitnami/grafana/README.md index 7ad6c83974d9..f2737d7fc53a 100644 --- a/bitnami/grafana/README.md +++ b/bitnami/grafana/README.md @@ -64,32 +64,16 @@ cd bitnami/APP/VERSION/OPERATING-SYSTEM docker build -t bitnami/APP:latest . ``` +## Using `docker-compose.yaml` + +Please be aware this file has not undergone internal testing. Consequently, we advise its use exclusively for development or testing purposes. For production-ready deployments, we highly recommend utilizing its associated [Bitnami Helm chart](https://github.com/bitnami/charts/tree/main/bitnami/grafana). + ## Connecting to other containers Using [Docker container networking](https://docs.docker.com/engine/userguide/networking/), a different server running inside a container can easily be accessed by your application containers and vice-versa. Containers attached to the same network can communicate with each other using the container name as the hostname. -### Using the Command Line - -#### Step 1: Create a network - -```console -docker network create grafana-network --driver bridge -``` - -#### Step 2: Launch the grafana container within your network - -Use the `--network ` argument to the `docker run` command to attach the container to the `grafana-network` network. - -```console -docker run --name grafana-node1 --network grafana-network bitnami/grafana:latest -``` - -#### Step 3: Run another containers - -We can launch another containers using the same flag (`--network NETWORK`) in the `docker run` command. If you also set a name to your container, you will be able to use it as hostname in your network. - ## Configuration ### Environment variables @@ -132,18 +116,7 @@ We can launch another containers using the same flag (`--network NETWORK`) in th | `GF_OP_PATHS_PROVISIONING` | Grafana Operator directory for provisioning configurations. | `/etc/grafana/provisioning` | | `GF_OP_PLUGINS_INIT_DIR` | Grafana Operator directory for plugins. | `/opt/plugins` | -### Dev config - -Update the `grafana.ini` configuration file in the `/opt/bitnami/grafana/conf` directory to override default configuration options. You only need to add the options you want to override. Config files are applied in the order of: - -```text -grafana.ini -default.ini -``` - -To enable development mode, edit the `grafana.ini` file and set `app_mode = development`. - -### Production config +### Overriding configuration Override the `/opt/bitnami/grafana/conf/grafana.ini` file mounting a volume. @@ -151,8 +124,6 @@ Override the `/opt/bitnami/grafana/conf/grafana.ini` file mounting a volume. docker run --name grafana-node -v /path/to/grafana.ini:/opt/bitnami/grafana/conf/grafana.ini bitnami/grafana:latest ``` -After that, your configuration will be taken into account in the server's behaviour. - You can also do this by changing the [`docker-compose.yml`](https://github.com/bitnami/containers/blob/main/bitnami/grafana/docker-compose.yml) file present in this repository: ```yaml @@ -180,51 +151,11 @@ When you start the Grafana image, you can specify a comma, semi-colon or space s - `plugin_id:plugin_version`: This will download the plugin with name `plugin_id` and version `plugin_version` from [the official Grafana plugins page](https://grafana.com/grafana/plugins). - `plugin_id=url`: This will download the plugin with name `plugin_id` using the zip file specified in `url`. In case you want to skip TLS verification, set the variable `GF_INSTALL_PLUGINS_SKIP_TLS` to `yes`. -For Docker Compose, add the variable name and value under the application section: - -```yaml -grafana: - ... - environment: - - GF_INSTALL_PLUGINS=grafana-clock-panel:1.1.0,grafana-kubernetes-app,worldpring=https://github.com/raintank/worldping-app/releases/download/v1.2.6/worldping-app-release-1.2.6.zip - ... -``` - -For manual execution add a `-e` option with each variable and value: - -```console -docker run -d --name grafana -p 3000:3000 \ - -e GF_INSTALL_PLUGINS="grafana-clock-panel:1.1.0,grafana-kubernetes-app,worldpring=https://github.com/raintank/worldping-app/releases/download/v1.2.6/worldping-app-release-1.2.6.zip" \ - bitnami/grafana:latest -``` - #### Grafana Image Renderer plugin You can install the [Grafana Image Renderer plugin](https://github.com/grafana/grafana-image-renderer) to handle rendering panels and dashboards as PNG images. To install the plugin, follow the instructions described in the [previous section](#install-plugins-at-initialization). -As an alternative to install this plugin, you can use the [Grafana Image Renderer container](https://github.com/bitnami/containers/blob/main/bitnami/grafana-image-renderer) to set another Docker container for rendering and using remote rendering. We highly recommend to use this option. In the Docker Compose below you can see an example to use this container: - -```yaml -version: '2' - -services: - grafana: - image: bitnami/grafana:latest - ports: - - 3000:3000 - environment: - GF_SECURITY_ADMIN_PASSWORD: "bitnami" - GF_RENDERING_SERVER_URL: "http://grafana-image-renderer:8080/render" - GF_RENDERING_CALLBACK_URL: "http://grafana:3000/" - grafana-image-renderer: - image: bitnami/grafana-image-renderer:latest - ports: - - 8080:8080 - environment: - HTTP_HOST: "0.0.0.0" - HTTP_PORT: "8080" - ENABLE_METRICS: 'true' -``` +As an alternative to install this plugin, you can use the [Grafana Image Renderer container](https://github.com/bitnami/containers/blob/main/bitnami/grafana-image-renderer) to set another Docker container for rendering and using remote rendering. We highly recommend to use this option. ### FIPS configuration in Bitnami Secure Images @@ -242,48 +173,6 @@ docker logs grafana You can configure the containers [logging driver](https://docs.docker.com/engine/admin/logging/overview/) using the `--log-driver` option if you wish to consume the container logs differently. In the default configuration docker uses the `json-file` driver. -## Maintenance - -### Upgrade this image - -Bitnami provides up-to-date versions of grafana, including security patches, soon after they are made upstream. We recommend that you follow these steps to upgrade your container. - -#### Step 1: Get the updated image - -```console -docker pull bitnami/grafana:latest -``` - -#### Step 2: Stop and backup the currently running container - -Stop the currently running container using the command - -```console -docker stop grafana -``` - -Next, take a snapshot of the persistent volume `/path/to/grafana-persistence` using: - -```console -rsync -a /path/to/grafana-persistence /path/to/grafana-persistence.bkp.$(date +%Y%m%d-%H.%M.%S) -``` - -You can use this snapshot to restore the database state should the upgrade fail. - -#### Step 3: Remove the currently running container - -```console -docker rm -v grafana -``` - -#### Step 4: Run the new image - -Re-create your container from the new image, restoring your backup if necessary. - -```console -docker run --name grafana bitnami/grafana:latest -``` - ## Notable Changes ### 7.5.7-debian-10-r16 @@ -304,12 +193,6 @@ You can still build your custom image adding your custom plugins or install them - Grafana doesn't ship the [`grafana-image-renderer` plugin](https://github.com/grafana/grafana-image-renderer/) by default anymore since it's not compatible with K8s distros with IPv6 disable. Instead, the `GF_INSTALL_PLUGINS` environment variable is set by default including this plugin so it's installed during the container's initialization, users can easily avoid it by overwriting the environment variable. -## Using `docker-compose.yaml` - -Please be aware this file has not undergone internal testing. Consequently, we advise its use exclusively for development or testing purposes. For production-ready deployments, we highly recommend utilizing its associated [Bitnami Helm chart](https://github.com/bitnami/charts/tree/main/bitnami/grafana). - -If you detect any issue in the `docker-compose.yaml` file, feel free to report it or contribute with a fix by following our [Contributing Guidelines](https://github.com/bitnami/containers/blob/main/CONTRIBUTING.md). - ## License Copyright © 2026 Broadcom. The term "Broadcom" refers to Broadcom Inc. and/or its subsidiaries.