Saltearse al contenido

Configuración del Servidor

En esta sección detallamos la configuración del servidor que aloja nuestro Wiki, utilizando un Droplet de Digital Ocean con Ubuntu y Docker preinstalado.

Creación del Droplet

  1. Iniciamos sesión en la consola de Digital Ocean
  2. Seleccionamos “Create Droplet”
  3. Elegimos la imagen “Ubuntu 22.04 with Docker”
  4. Seleccionamos el tamaño adecuado (1 GB RAM / 1 vCPU es suficiente para empezar)
  5. Elegimos la región más cercana a nuestros usuarios (SFO3 - San Francisco)
  6. Configuramos una clave SSH para acceso seguro
  7. Asignamos un nombre descriptivo: “dockeronubuntu2204-s-1vcpu-1gb-sfo3-01”

Configuración inicial de seguridad

Una vez creado el Droplet, nos conectamos mediante SSH y realizamos las primeras tareas de mantenimiento:

Ventana de terminal
# Actualizar el sistema
sudo apt update && sudo apt upgrade -y

Configuración de acceso a GitHub

Para permitir que el servidor interactúe con nuestros repositorios, configuramos SSH y Git:

Ventana de terminal
# Generar clave SSH para GitHub
ssh-keygen -t ed25519 -C "hola@neodigital.mx"
eval "$(ssh-agent -s)"
ssh-add ~/.ssh/id_ed25519
# Mostrar la clave pública para agregarla a GitHub
cat ~/.ssh/id_ed25519.pub
# Configurar Git
git config --global user.name "NeoDigital-Droplet1"
git config --global user.email "hola@neodigital.mx"
# Verificar conexión con GitHub
ssh -T git@github.com

La clave pública generada debe añadirse como una deploy key en el repositorio de GitHub o como clave SSH en la cuenta que tenga acceso al repositorio.

Estructura de directorios

Organizamos el servidor con una estructura clara para facilitar su mantenimiento:

Ventana de terminal
# Crear estructura de directorios para los repositorios
mkdir -p GitHub/repositories

Configuración de accesos rápidos

Para facilitar la navegación, creamos un alias en .bashrc:

Ventana de terminal
nano ~/.bashrc

Añadimos esta función al final del archivo:

Ventana de terminal
# Atajo para acceder rápidamente al directorio de repositorios
repos() {
cd ~/GitHub/repositories/$1
}

Aplicamos los cambios:

Ventana de terminal
source ~/.bashrc

Ahora podemos usar el comando repos para acceder rápidamente a cualquier repositorio, por ejemplo:

  • repos nos lleva a ~/GitHub/repositories/
  • repos neodigital-wiki nos lleva al directorio del wiki

Preparación para múltiples aplicaciones

La configuración del servidor está pensada para alojar múltiples aplicaciones, cada una en su propio contenedor Docker. Esto permite:

  1. Aislamiento: Cada aplicación opera independientemente
  2. Eficiencia: Compartir recursos del servidor de manera óptima
  3. Flexibilidad: Facilidad para añadir o eliminar servicios
  4. Seguridad: Mayor control sobre cada componente

Siguientes pasos

Con el servidor preparado, procedemos al despliegue de la aplicación usando Docker y Nginx.