Servicios con docker - Instalar Nginx Proxy Manager
Toca levantar el primer servicio con docker, un proxy que sirve para poder configurar la salida a internet de los demás servicios.
Consideraciones previas
Nginx Proxy Manager permite evitar la apertura de puertos extras en el servidor a utilizar, más allá de los puertos web y ssh.
Además posibilita agregar dominio/subdominio a cada servicio, junto con su respectivo certificado de seguridad SSL Let's Encrypt, todo de manera casi automatizada.
Voy a usar codeberg para alojar los archivos de configuración, para que mantengan el formato correcto.
Documentación oficial de referencia
Pre-Instalación
1. Instalar paquete de Apache para poder utilizar autenticación por dominio de ser necesario
apt install apache2-utils
2. Crear red docker (el nombre elegido es 'proxy', puede ser cualquier otro)
docker network create proxy
3. Estructura de directorios y archivos
nginxpm/
├── data/
├── docker-compose.yml
-
Crear carpeta data (vacía)
-
Agregar archivo docker-compose.yml con el contenido alojado en codeberg
Instalación
1. Iniciar contenedor
docker compose up -d
La primera vez que se ejecuta hay que tener en cuenta:
-
Las claves JWT serán generadas y guardadas en la carpeta data
-
La base de datos inicializará la estructura de las tablas
-
Se creará un usuario administrador predeterminado
Este proceso puede tomar algunos minutos dependiendo del servidor
Para comprobar que todo va bien, se puede revisar con el comando para ver logs de docker
docker compose logs -f
Para terminar de mostrar logs, usar CTRL+C, esto devuelve la terminal pero no finaliza el contenedor, sólo el log
2. Ir al navegador y colocar la IP del servidor + el puerto 81 (EJ: 1.2.3.4:81). Debería aparecer la pantalla de ingreso.
NOTA: tiene que estar habilitado el puerto vía TCP en el firewall, si es que el servidor lo tiene activado
3. Usuario y contraseña por defecto, que por seguridad pide cambiar inmediatamente al ingresar
Correo: admin@example.com
Contraseña: changeme
Finalización
En este punto ya está Nginx Proxy Manager funcionando y listo para usar, se pueden ir agregando servicios nuevos con dominios y configurarlos en el panel, incluído el mismo Nginx PM.