Usando Nginx Proxy Manager
Instalacion
Para el proceso de instalacion de Nginx Proxy Manager te recomiendo que uses el siguiente docker compose docker compose y si no tienes idea de como ejecutar el stack puedes usar la Introducción de los comandos de uso comun y considereciones
Antes de continuar necesitaremos un servicio el cual expondremos a internet, en este caso usaremos FileBrowser como ejemplo, te invito a que generes una instancia de este servicio o cualquier otro listado en Servicios Con Docker Compose.
Ademas tendras que ingresar al panel de control de Nginx Proxy Manager, para esto, estando en la misma red que el servidor ingresaremos a ip-del-servidor:81
Posteriormente para el primer ingreso usaremos las siguientes credenciales
Usuario: admin@example.com
Password: changeme
Al ingresar te pedira cambiar la contraseña y el correo, lo haces (no tienen porque ser reales pero si debe seguir formato de correo electronico) y luego desde la pestaña de Dashboard haces click sobre el boton de Proxy Host y posteriormente en Add Proxy Host
Ejemplos de uso del Proxy Inverso
Aqui veemos como exponer una instancia del servicio filebrowser, su puerto interno lo encontraras en la documentacion oficial aunque en muchas ocaciones podras encontrar un ejemplo en los repositorios de Docker Hub Container Image Library, Ahi buscaras los docker compose y la seccion de puertos, veamos el siguiente fragmente de un docker-compose
services:
filebrowser:
image: filebrowser/filebrowser:latest
container_name: filebrowser
ports:
- 8009:80
En nuestro caso no necesitamos exponer este puerto y comentaremos las lineas de port y el puerto. Nos quedaremos con el dato de que el puerto interno (señalado siempre en el lado derecho) es el puerto 80 y tomaremos el nombre del contenedor y los ingresaremos de la siguiente manera.
En la seccion de Domain Names usaras el dominio generado por tu provedor DDNS visto anteriormente y un subdominio a elegir pero que no se repita, en mi caso fue cloud y el dominio es tinyfox.ddns.me.
Posteriormente en la pestaña SSL generamos un certificado y habilitamos las siguientes casillas para forzar la redireccion a el puerto 443
Por ultimo, al ser una aplicacion que usa WevDav para transmicion de archivos seleccionamos el engranaje para ir a la pestaña de Custom Nginx Configuration y agregamos el contenido mencionado en previamente mencionado en Nginx Proxy Manager
Pruebas
Para probar que todo quedo bien ingresa a la pagina que escribiste en la seccion de Domain Names y veras el servicio que creaste o no.
Extras
Recuerda que Nginx Proxy Manager es para servicios http, si quieres exponer un servicio que no sea de este estilo tendras que abrir otros puertos del modem que apunten al puerto del servidor o puedes usar Nginx Proxy Manager para redirigir este flujo a otros puertos y abrir estos de igual forma en el modem por si quisieras cambiar el puerto por defecto de una aplicacion y esta no te lo permitiera



