Loading .gitlab-ci.yml +1 −1 Original line number Diff line number Diff line include: - project: 'redmic-project/gitlab-ci-templates' ref: master file: '/deployment.yml' file: '/deployment-service/docker-deploy.yml' stages: - deploy Loading deploy/.env +9 −8 Original line number Diff line number Diff line GF_PATHS_DATA=/var/lib/grafana GF_PATHS_PROVISIONING=/etc/grafana/provisioning GF_SERVER_HTTP_PORT=3000 GF_SERVER_ENABLE_GZIP=true GF_PATHS_DATA=/var/lib/grafana GF_PATHS_PROVISIONING=/etc/grafana/provisioning GF_SECURITY_ADMIN_USER=admin GF_SECURITY_ADMIN_PASSWORD=admin GF_SECURITY_ALLOW_EMBEDDING=true Loading @@ -14,8 +14,6 @@ GF_SMTP_FROM_ADDRESS=admin@grafana.localhost GF_SMTP_FROM_NAME=Grafana GF_SMTP_HOST=localhost:25 GF_SMTP_SKIP_VERIFY=true GF_SMTP_USER=user GF_SMTP_PASSWORD=pass GF_LOG_MODE=console GF_LOG_LEVEL=warn GF_AUTH_ANONYMOUS_ENABLED=false Loading @@ -37,10 +35,13 @@ TRAEFIK_SUBDOMAIN=grafana PUBLIC_HOSTNAME=localhost DATA_VOL_NAME=grafana-vol DATA_VOL_DEVICE=:/grafana-vol/ DASHBOARDS_VOL_NAME=grafana-dashboards-vol DASHBOARDS_VOL_DEVICE=:/grafana-dashboards-vol/ VOL_TYPE=nfs4 DEV_VOL_DRIVER=local VOL_TYPE=nfs VOL_ADDR=127.0.0.1 VOL_OPTS=rw,nolock,noatime,tcp,rsize=8192,wsize=8192,timeo=14 VOL_VERS=4.2 VOL_OPTS=nolock,noacl,noatime,nodiratime PRO_VOL_DRIVER=cloudstor:aws VOL_BACKING=shared deploy/docker-compose.dev.yml→deploy/compose.dev.yaml +16 −0 Original line number Diff line number Diff line version: '3.9' volumes: data-vol: name: ${DATA_VOL_NAME} driver: local driver: ${DEV_VOL_DRIVER} driver_opts: type: ${VOL_TYPE} o: addr=${VOL_ADDR},${VOL_OPTS} device: ${DATA_VOL_DEVICE} o: addr=${VOL_ADDR},vers=${VOL_VERS},${VOL_OPTS} device: :${VOL_DEVICE_PREFIX}${DATA_VOL_DEVICE:-/grafana-vol/} dashboards-vol: name: ${DASHBOARDS_VOL_NAME} driver: local driver: ${DEV_VOL_DRIVER} driver_opts: type: ${VOL_TYPE} o: addr=${VOL_ADDR},${VOL_OPTS} device: ${DASHBOARDS_VOL_DEVICE} o: addr=${VOL_ADDR},vers=${VOL_VERS},${VOL_OPTS} device: :${VOL_DEVICE_PREFIX}${DASHBOARDS_VOL_DEVICE:-/grafana-dashboards-vol/} deploy/docker-compose.prod.yml→deploy/compose.prod.yaml +4 −6 Original line number Diff line number Diff line version: '3.9' volumes: data-vol: name: ${DATA_VOL_NAME} driver: 'cloudstor:aws' driver: ${PRO_VOL_DRIVER} driver_opts: backing: shared backing: ${VOL_BACKING} dashboards-vol: name: ${DASHBOARDS_VOL_NAME} driver: 'cloudstor:aws' driver: ${PRO_VOL_DRIVER} driver_opts: backing: shared backing: ${VOL_BACKING} deploy/docker-compose.tmpl.yml→deploy/compose.tmpl.yaml +10 −7 Original line number Diff line number Diff line version: '3.9' services: grafana: image: ${IMAGE_NAME:-grafana/grafana}:${IMAGE_TAG:-latest} environment: GF_SERVER_ROOT_URL: ${TRAEFIK_PROTOCOL}://${TRAEFIK_SUBDOMAIN}.${PUBLIC_HOSTNAME} GF_SERVER_HTTP_PORT: GF_SERVER_ENABLE_GZIP: GF_PATHS_DATA: GF_PATHS_PROVISIONING: GF_INSTALL_PLUGINS: GF_PLUGINS_ALLOW_LOADING_UNSIGNED_PLUGINS: GF_SERVER_HTTP_PORT: GF_SERVER_ENABLE_GZIP: GF_SECURITY_ADMIN_USER: GF_SECURITY_ADMIN_PASSWORD: GF_SECURITY_ALLOW_EMBEDDING: Loading Loading @@ -49,11 +47,18 @@ services: target: ${GF_PATHS_PROVISIONING}/datasources/datasources.yml - source: dashboards-providers-config target: ${GF_PATHS_PROVISIONING}/dashboards/dashboards_providers.yml healthcheck: test: curl -s http://127.0.0.1:${GF_SERVER_HTTP_PORT}/healthz interval: ${HEALTHCHECK_INTERVAL:-1m} timeout: ${HEALTHCHECK_TIMEOUT:-30s} retries: ${HEALTHCHECK_RETRIES:-10} start_period: ${HEALTHCHECK_START_PERIOD:-1m} deploy: mode: replicated replicas: ${REPLICAS:-1} labels: traefik.enable: ${TRAEFIK_ENABLE:-true} traefik.http.services.grafana.loadbalancer.server.port: ${GF_SERVER_HTTP_PORT} traefik.http.routers.grafana.entrypoints: ${TRAEFIK_ENTRYPOINT} traefik.http.routers.grafana.rule: Host(`${TRAEFIK_SUBDOMAIN}.${PUBLIC_HOSTNAME}`) Loading @@ -63,8 +68,6 @@ services: traefik.http.middlewares.grafana-redmic-auth-header.headers.customrequestheaders.Authorization: Bearer ${REDMIC_AUTH_TOKEN} traefik.http.middlewares.grafana-redmic-csp-header.headers.customresponseheaders.Content-Security-Policy: frame-ancestors ${PUBLIC_HOSTNAME} traefik.http.routers.grafana-redmic-embed.middlewares: grafana-redmic-auth-header, grafana-redmic-csp-header traefik.http.services.grafana.loadbalancer.server.port: ${GF_SERVER_HTTP_PORT} restart_policy: delay: ${RESTART_DELAY:-10s} update_config: Loading @@ -75,7 +78,7 @@ services: memory: ${RESOURCES_LIMITS_MEMORY:-512M} reservations: cpus: '${RESOURCES_RESERVATIONS_CPUS:-0.001}' memory: ${RESOURCES_RESERVATIONS_MEMORY:-128M} memory: ${RESOURCES_RESERVATIONS_MEMORY:-200M} networks: metric-net: Loading Loading
.gitlab-ci.yml +1 −1 Original line number Diff line number Diff line include: - project: 'redmic-project/gitlab-ci-templates' ref: master file: '/deployment.yml' file: '/deployment-service/docker-deploy.yml' stages: - deploy Loading
deploy/.env +9 −8 Original line number Diff line number Diff line GF_PATHS_DATA=/var/lib/grafana GF_PATHS_PROVISIONING=/etc/grafana/provisioning GF_SERVER_HTTP_PORT=3000 GF_SERVER_ENABLE_GZIP=true GF_PATHS_DATA=/var/lib/grafana GF_PATHS_PROVISIONING=/etc/grafana/provisioning GF_SECURITY_ADMIN_USER=admin GF_SECURITY_ADMIN_PASSWORD=admin GF_SECURITY_ALLOW_EMBEDDING=true Loading @@ -14,8 +14,6 @@ GF_SMTP_FROM_ADDRESS=admin@grafana.localhost GF_SMTP_FROM_NAME=Grafana GF_SMTP_HOST=localhost:25 GF_SMTP_SKIP_VERIFY=true GF_SMTP_USER=user GF_SMTP_PASSWORD=pass GF_LOG_MODE=console GF_LOG_LEVEL=warn GF_AUTH_ANONYMOUS_ENABLED=false Loading @@ -37,10 +35,13 @@ TRAEFIK_SUBDOMAIN=grafana PUBLIC_HOSTNAME=localhost DATA_VOL_NAME=grafana-vol DATA_VOL_DEVICE=:/grafana-vol/ DASHBOARDS_VOL_NAME=grafana-dashboards-vol DASHBOARDS_VOL_DEVICE=:/grafana-dashboards-vol/ VOL_TYPE=nfs4 DEV_VOL_DRIVER=local VOL_TYPE=nfs VOL_ADDR=127.0.0.1 VOL_OPTS=rw,nolock,noatime,tcp,rsize=8192,wsize=8192,timeo=14 VOL_VERS=4.2 VOL_OPTS=nolock,noacl,noatime,nodiratime PRO_VOL_DRIVER=cloudstor:aws VOL_BACKING=shared
deploy/docker-compose.dev.yml→deploy/compose.dev.yaml +16 −0 Original line number Diff line number Diff line version: '3.9' volumes: data-vol: name: ${DATA_VOL_NAME} driver: local driver: ${DEV_VOL_DRIVER} driver_opts: type: ${VOL_TYPE} o: addr=${VOL_ADDR},${VOL_OPTS} device: ${DATA_VOL_DEVICE} o: addr=${VOL_ADDR},vers=${VOL_VERS},${VOL_OPTS} device: :${VOL_DEVICE_PREFIX}${DATA_VOL_DEVICE:-/grafana-vol/} dashboards-vol: name: ${DASHBOARDS_VOL_NAME} driver: local driver: ${DEV_VOL_DRIVER} driver_opts: type: ${VOL_TYPE} o: addr=${VOL_ADDR},${VOL_OPTS} device: ${DASHBOARDS_VOL_DEVICE} o: addr=${VOL_ADDR},vers=${VOL_VERS},${VOL_OPTS} device: :${VOL_DEVICE_PREFIX}${DASHBOARDS_VOL_DEVICE:-/grafana-dashboards-vol/}
deploy/docker-compose.prod.yml→deploy/compose.prod.yaml +4 −6 Original line number Diff line number Diff line version: '3.9' volumes: data-vol: name: ${DATA_VOL_NAME} driver: 'cloudstor:aws' driver: ${PRO_VOL_DRIVER} driver_opts: backing: shared backing: ${VOL_BACKING} dashboards-vol: name: ${DASHBOARDS_VOL_NAME} driver: 'cloudstor:aws' driver: ${PRO_VOL_DRIVER} driver_opts: backing: shared backing: ${VOL_BACKING}
deploy/docker-compose.tmpl.yml→deploy/compose.tmpl.yaml +10 −7 Original line number Diff line number Diff line version: '3.9' services: grafana: image: ${IMAGE_NAME:-grafana/grafana}:${IMAGE_TAG:-latest} environment: GF_SERVER_ROOT_URL: ${TRAEFIK_PROTOCOL}://${TRAEFIK_SUBDOMAIN}.${PUBLIC_HOSTNAME} GF_SERVER_HTTP_PORT: GF_SERVER_ENABLE_GZIP: GF_PATHS_DATA: GF_PATHS_PROVISIONING: GF_INSTALL_PLUGINS: GF_PLUGINS_ALLOW_LOADING_UNSIGNED_PLUGINS: GF_SERVER_HTTP_PORT: GF_SERVER_ENABLE_GZIP: GF_SECURITY_ADMIN_USER: GF_SECURITY_ADMIN_PASSWORD: GF_SECURITY_ALLOW_EMBEDDING: Loading Loading @@ -49,11 +47,18 @@ services: target: ${GF_PATHS_PROVISIONING}/datasources/datasources.yml - source: dashboards-providers-config target: ${GF_PATHS_PROVISIONING}/dashboards/dashboards_providers.yml healthcheck: test: curl -s http://127.0.0.1:${GF_SERVER_HTTP_PORT}/healthz interval: ${HEALTHCHECK_INTERVAL:-1m} timeout: ${HEALTHCHECK_TIMEOUT:-30s} retries: ${HEALTHCHECK_RETRIES:-10} start_period: ${HEALTHCHECK_START_PERIOD:-1m} deploy: mode: replicated replicas: ${REPLICAS:-1} labels: traefik.enable: ${TRAEFIK_ENABLE:-true} traefik.http.services.grafana.loadbalancer.server.port: ${GF_SERVER_HTTP_PORT} traefik.http.routers.grafana.entrypoints: ${TRAEFIK_ENTRYPOINT} traefik.http.routers.grafana.rule: Host(`${TRAEFIK_SUBDOMAIN}.${PUBLIC_HOSTNAME}`) Loading @@ -63,8 +68,6 @@ services: traefik.http.middlewares.grafana-redmic-auth-header.headers.customrequestheaders.Authorization: Bearer ${REDMIC_AUTH_TOKEN} traefik.http.middlewares.grafana-redmic-csp-header.headers.customresponseheaders.Content-Security-Policy: frame-ancestors ${PUBLIC_HOSTNAME} traefik.http.routers.grafana-redmic-embed.middlewares: grafana-redmic-auth-header, grafana-redmic-csp-header traefik.http.services.grafana.loadbalancer.server.port: ${GF_SERVER_HTTP_PORT} restart_policy: delay: ${RESTART_DELAY:-10s} update_config: Loading @@ -75,7 +78,7 @@ services: memory: ${RESOURCES_LIMITS_MEMORY:-512M} reservations: cpus: '${RESOURCES_RESERVATIONS_CPUS:-0.001}' memory: ${RESOURCES_RESERVATIONS_MEMORY:-128M} memory: ${RESOURCES_RESERVATIONS_MEMORY:-200M} networks: metric-net: Loading