como poner ssl en grafana a través de docker
Set configuration options in the Grafana docker container like this: https://grafana.com/docs/installation/docker/#configuration
Settings for self-signed SSL/TLS certificates: https://grafana.com/docs/installation/configuration/#cert-file
-
Example with docker-compose: https://www.grzegorowski.com/grafana-with-lets-encrypt-ssl-on-docker/
- GF_SERVER_CERT_FILE=/etc/letsencrypt/certs/YOUR.DOMAIN.TEST.crt # adjust to match your domain name - GF_SERVER_CERT_KEY=/etc/letsencrypt/certs/YOUR.DOMAIN.TEST.key # adjust to match your domain name - GF_SERVER_PROTOCOL=https
Hola, lo más importante es ubicar los certificados. Necesitas poner los certificados en un directorio accesible para el usuario root de grafana, por ejemplo en: /etc/ssl. En mi caso copié los certificados previamente en un directorio /certs dentro de la carpeta de mi sitio grafana en letsencrypt
grafana:
image: grafana/grafana
container_name: grafana
environment:
GF_SECURITY_ADMIN_USER: ${GRAFANA_USER}
GF_SECURITY_ADMIN_PASSWORD: ${GRAFANA_PASSWORD}
GF_SERVER_HTTP_PORT: 443
GF_SERVER_PROTOCOL: https
GF_SERVER_ROOT_URL: https://grafana.mydomain.com/
GF_SERVER_CERT_FILE: /etc/ssl/grafana.crt
GF_SERVER_CERT_KEY: /etc/ssl/grafana.key
user: '0'
ports:
- "443:443"
volumes:
- grafana_data:/var/lib/grafana
- /etc/letsencrypt/live/grafana.mydomain.com/certs:/etc/ssl
restart: unless-stopped
networks:
- mynetwork
Es importante que especifiques user: ‘0’ porque el usuario grafana no tiene permiso para acceder a /etc/ssl