Skip to content

Main infrastructure configuration of the server to manage the deployment of vserver.

Notifications You must be signed in to change notification settings

eclipse-thingweb/infrastructure

Repository files navigation

Infrastructure

Main infrastructure configuration of the server to manage the deployment of the Eclipse Server. This repository consists of docker compose files to run Portainer and other infrastructural services such as Traefik proxy, cAdvisor, Prometheus, Grafana and Grafana Loki.

For the list of open ports, see ports.md

Portainer

Portainer is used to manage running Docker containers.

Infrastructural Services

docker-compose-services.yml contains the configuration for the deployment of the infrastructural services.

To be able to access the services, the user must login through GitHub. For GitHub authentication to work, environment variables OAUTH_SECRET and, GITHUB_CLIENT_ID and GITHUB_CLIENT_SECRET must be set with the configuration of GitHub OAuth application. Only whitelisted emails can access some of the services. Whitelisted emails can be set using the environment variable WHITELISTED_EMAILS. These services are accessible at:

  • Traefik dashboard -> traefik.localhost
  • cAdvisor -> cadvisor.localhost
  • Prometheus -> prometheus.localhost

Grafana and Portainer UIs are public access but they run their own authentication and authorization. These services are accessible at:

  • Grafana -> grafana.localhost

Hostname and ports can be changed from .env file in the root directory.

Saving Grafana Dashboards

Grafana dashboard json files are stored in ./conf/grafana/dashboards. To save your newly created dashboard locally and push it into the remote repository:

If your dashboard uses another datasource than our default prometheus-datasource, new datasource also must be provisioned in ./conf/grafana/datasources. For more information check Grafana's provisioning documentation.

Instructions

  1. After deploying Grafana, configure GitHub OAuth2 through developer settings
  2. Add emails for admin rights via role attributes: [email==<USER_EMAIL>] && 'Admin' || 'Viewer'

About

Main infrastructure configuration of the server to manage the deployment of vserver.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 4

  •  
  •  
  •  
  •