Contenido

Agate: Un servidor Gemini confiable y fácil de instalar con Docker

Hace un tiempo, en mi artículo sobre minimalismo y el protocolo Gemini), exploré el concepto de la “Web pequeña” y las ventajas de este protocolo alternativo. Posteriormente, compartí un tutorial sobre cómo instalar un servidor Gemini utilizando Molly-Brown. Sin embargo, tras un período de uso, experimenté problemas de fiabilidad con ese servidor, lo que me llevó a buscar una alternativa más robusta.

Mi búsqueda se centró en encontrar un servidor que cumpliera con dos requisitos clave: instalación y configuración sencillas. Tras evaluar diversas opciones, descubrí que el contenedor Docker del servidor Agate satisfacía perfectamente mis necesidades.

Captura de un navegador Gemini
El servidor funcionando.

A continuación, detallo los pasos para instalar y configurar Agate utilizando Docker, lo que simplifica enormemente el proceso.

Estructura de directorios

gemini/
├── docker-compose.yml
├── certificate/
│ ├── openssl.config
│ └── (archivos de certificado para el servidor Gemini)
└── content/
└── (contenido del servidor Gemini)

Creacion de certificados

Hay varias maneras de crear un certificado, de hecho en este artículo lo hago de una manera diferente a la manera que expongo a continuación.

  1. Crea un archivo de configuración para el certificado

Crea un archivo llamado openssl.cnf en la misma carpeta donde vas a generar el certificado, con este contenido:

nano certificate/openssl.cnf

[req] distinguished_name = req_distinguished_name x509_extensions = v3_req prompt = no

[req_distinguished_name] CN = yourdomain.com # Reemplázalo con tu dominio o dirección IP si es un servidor local

[v3_req] keyUsage = critical, digitalSignature, keyEncipherment extendedKeyUsage = serverAuth subjectAltName = @alt_names

[alt_names] DNS.1 = yourdomain.com # Reemplázalo con tu dominio DNS.2 = localhost # Opcional, si también quieres que funcione en localhost IP.1 = 192.168.1.100 # Reemplázalo con la IP de tu servidor, si lo accedes por IP

  1. Generar el certificado y la clave
openssl req -x509 -newkey rsa:4096 -sha256 -days 365 -nodes \
    -keyout key.pem -out cert.pem -config openssl.cnf
  1. Cambia los permisos
chmod 600 key.pem cert.pem

Docker-compose

Aquí viene lo más importante. Con este archivo docker-compose.yml crearemos el servidor ya configurado para funcionar perfectamente.

version: '3.8'

services:
  agate:
    image: ghcr.io/mbrubeck/agate:latest
    container_name: agate_gemini
    restart: unless-stopped
    ports:
      - "1965:1965"
    volumes:
      - ./content:/gmi
      - ./certificate:/certs
    command: ["--hostname", "capsula.milangaelectronica.com.ar"]

Para iniciar el servidor, ejecuta el siguiente comando:

docker-compose up -d

Conclusión

La transición al servidor Agate, facilitada por su implementación en Docker, ha demostrado ser una solución mucho más estable y sencilla de administrar en comparación con mi experiencia previa con Molly-Brown. La combinación de la simplicidad de Docker con la eficiencia de Agate ofrece una forma robusta y accesible de alojar cápsulas Gemini.

Este enfoque no solo simplifica el proceso de instalación y configuración, sino que también proporciona una mayor flexibilidad y control sobre el servidor. Para aquellos interesados en explorar el protocolo Gemini, Agate se presenta como una opción sólida y confiable.

 

¡Deja tus comentarios aquí !

 

 

Dame feedback!