Entorno del servidor: VPS, con Discourse desplegado mediante Docker en 1Panel
Esto es para el caso en que no se configuren el ID y la clave de MaxMind en app.yml, sino que se descarguen automáticamente y periódicamente los archivos GeoLite2-City.mmdb y GeoLite2-ASN.mmdb a través de un espejo de GitHub.
Esto puede resolver las siguientes dos advertencias de MaxMindDB que aparecen en los registros de error:
MaxMindDB (/var/www/discourse/vendor/data/GeoLite2-City.mmdb) no se pudo encontrar: No such file or directory @ rb_sysopen - /var/www/discourse/vendor/data/GeoLite2-City.mmdb
MaxMindDB (/var/www/discourse/vendor/data/GeoLite2-ASN.mmdb) no se pudo encontrar: No such file or directory @ rb_sysopen - /var/www/discourse/vendor/data/GeoLite2-ASN.mmdb
Procedimiento:
1. Crear el directorio maxmind en el host y establecer los permisos
mkdir -p /opt/1panel/apps/discourse/shared/standalone/maxmind && chmod 755 /opt/1panel/apps/discourse/shared/standalone/maxmind && chown 1000:1000 /opt/1panel/apps/discourse/shared/standalone/maxmind
2. Configurar el montaje de los archivos GeoLite2-City.mmdb y GeoLite2-ASN.mmdb en el host:
Editar app.yml y agregar:
- volume:
host: /opt/1panel/apps/discourse/shared/standalone/maxmind/GeoLite2-City.mmdb
guest: /var/www/discourse/vendor/data/GeoLite2-City.mmdb
- volume:
host: /opt/1panel/apps/discourse/shared/standalone/maxmind/GeoLite2-ASN.mmdb
guest: /var/www/discourse/vendor/data/GeoLite2-ASN.mmdb
3. Configurar en 1Panel una tarea programada para descargar y actualizar periódicamente cada semana los archivos de mapas GeoLite2-City.mmdb y GeoLite2-ASN.mmdb desde GitHub:
El script de la tarea programada es el siguiente:
cd /opt/1panel/apps/discourse/shared/standalone/maxmind && rm -f GeoLite2-City.mmdb GeoLite2-ASN.mmdb && wget -O GeoLite2-City.mmdb https://github.com/P3TERX/GeoLite.mmdb/raw/download/GeoLite2-City.mmdb && wget -O GeoLite2-ASN.mmdb https://github.com/P3TERX/GeoLite.mmdb/raw/download/GeoLite2-ASN.mmdb && chmod 644 GeoLite2-City.mmdb GeoLite2-ASN.mmdb && chown 1000:1000 GeoLite2-City.mmdb GeoLite2-ASN.mmdb
