mirror of
https://github.com/mattermost/mattermost.git
synced 2025-02-25 18:55:24 -06:00
* docker: prometheus and grafana for development Add prometheus and grafana docker configuration when developing with access to the enterprise repository. This simplifies the setup for developers adding new metrics or even examining events from their development server. The services are disabled by default when no enterprise source is detected. Grafana is provisioned automatically with the Prometheus datasource, as well as the canonical dashboards used with Mattermost. Furthermore, no authentication is required to access Grafana to simplify access from a development environment. The default home dashboard is customized to automatically show links to the provisioned dashboards. Dashboards can be saved, and login remains available via the default `admin/admin` credentials (which initiates a password reset), but no dashboard or system configuration is (currently) persisted if the container is destroyed. Linux requires slightly special handling (well, really it's Docker for MacOS/Windows), in that `host.docker.internal` is the canonical way to resolve the host on MacOS/Windows, but on Linux it's usually sufficient to just use `localhost`. Until https://github.com/docker/for-linux/issues/264 is resolved, this PR includes code to customize the Prometheus configuration to point at the required address for the running platform. * metrics: track active jobs by type * metrics: active jobs chart * metrics: server start and job annotations * Update build/docker-compose.common.yml Co-authored-by: Claudio Costa <cstcld91@gmail.com> * prometheus: resolve docker host via 172.17.0.1 instead * skip enabling prometheus and grafana by default * handle JOB_STATUS_ERROR and JOB_STATUS_CANCELED end states * handle nil srv.metrics * lookup job to determine type for metrics * mocked unit tests for jobs * goimports lint fixes * missing license * add instance to server start tag * filter annotations by selected instance Co-authored-by: Claudio Costa <cstcld91@gmail.com> Co-authored-by: Mattermod <mattermod@users.noreply.github.com>
About this folder
This folder contains some files that we use to build the mattermost-server using Jenkins and other files like privacy policy and licenses.
The Dockerfile in this folder (Dockerfile.buildenv) is the build environment for our current builds you can find the docker image to download here or build your own.
Docker Image for building the Server
We have a docker image to build mattermost-server and it is based on Go docker image.
In our Docker Hub Repository we have the following images:
mattermost/mattermost-build-server:dec-7-2018which is based on Go 1.11 you can use for MM versions <=5.8.0mattermost/mattermost-build-server:feb-28-2019which is based on Go 1.12 you can use for MM versions >=5.9.0<=5.15.0mattermost/mattermost-build-server:sep-17-2019which is based on Go 1.12.9 you can use for MM versions >=5.16.0mattermost/mattermost-build-server:20200322_golang-1.14.1which is based on Go 1.14.1 you can use for MM versions >=5.24.0mattermost/mattermost-build-server:20201119_golang-1.15.5which is based on Go 1.14.6 you can use for MM versions >=5.26.0