0

Desplegar Nginx Proxy Manager con Docker

Hola a tod@s,

En este post vamos a ver como desplegar Nginx Proxy Manager con Docker.

  • Para empezar, vamos a ver que hemos preparado esta máquina virtual con Ubuntu Server 24.04 LTS, dónde tenemos dos discos, uno de sistema y otro de datos:

  • Como podemos ver, el disco de datos lo hemos montado sobre /opt/docker que es dónde vamos a ubicar todos los contenedores Dockers y sus configuraciones:

  • Nos creamos el registro DNS del tipo CNAME para nginx proxy manager apuntando a la máquina que tiene instalada el Docker:

  • Lo primero que vamos a realizar es actualizar nuestro sistema, sudo apt update && sudo apt upgrade -y:

  • Instalamos las dependencias necesarias, sudo apt install -y ca-certificates curl gnupg lsb-release:

  • Instalamos Docker desde el script oficial, curl -fsSL https://get.docker.com -o get-docker.sh, sudo sh get-docker.sh, rm get-docker.sh:

  • Instalamos el plugin de Docker Compose, sudo apt install -y docker-compose-plugin:

  • Verificamos las versiones, docker –version, docker compose version:

  • Ahora vamos a crear la estructura de directorios y permisos para el contenedor de nginx proxy manager:
  • sudo mkdir -p /opt/docker/nginxpm/data
  • sudo mkdir -p /opt/docker/nginxpm/certs
  • sudo chmod -R 755 /opt/docker

  • Así quedaría nuestra estructura de directorios:

  • Ahora creamos la red interna para Docker, esto permite que los contenedores se comuniquen sin exponer puertos externos, sudo docker network create internal-net:

  • Lo siguiente que haremos será crearnos el archivo docker-compose.yml para nginx proxy manager, sudo nano /opt/docker/nginxpm/docker-compose.yml:

  • Iniciamos Nginx Proxy Manager, cd /opt/docker/nginxpm, sudo docker compose up -d:

  • Aquí vemos el contenedor levantado:

  • Ahora accedemos al panel de administración de Nginx Proxy Manager en el puerto 81, el usuario es admin@example.com y la contraseña changeme:

  • Editamos el usuario y lo personalizamos a nuestro gusto, Save:

  • Cambiamos la contraseña por defecto, Save:

  • Esta sería la estructura de directorios que queda configurada para el contenedor Docker de Nginx Proxy Manager:

  • Con todo esto, ya tenemos nuestro contenedor Docker de Nginx Proxy Manager operativo, en los siguientes posts veremos, cómo se configuran los certificados SSL, veremos tres formas, dos de ellas con Let´s Encrypt configurado por DNS Challenge, uno con el DNS Provider por Cloudflare y otro con el DNS Provider por Azure así no exponemos hacia fuera los puertos 80 y 443, la tercera forma que veremos con los certificados serán con certificados comprados a una CA y utilizando la parte Custom para añadirlos, y en otros post veremos como desplegar otras aplicaciones con Docker como homepage utilizando el Nginx Proxy Manager con los certificados que hemos añadido, configurando los Host en nuestro Nginx Proxy Manager.
  • Aquí os dejo un pequeño apunte con los comando útiles de Docker:

Link descarga en pdf

 

Saludos y espero que os sea de ayuda 😉

 

Jose Ramon Ramos Gata

Técnico Superior STI

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.