
Para ejecutar Docker con el proxy inverso Traefik v2 en un Synology NAS, necesito poder usar los puertos 80 y 443 en el sistema host. El Sistema Operativo del NAS DSM utiliza su propio proxy inverso, nginx, que intenta ocupar los puertos por sí solo. En DSM 6.2 pude cambiar los puertos 80 y 443 usando un script de arranque (change-ports.sh), como se describeaquí, para que los puertos quedaran libres y pudieran ser utilizados por el proxy inverso de Docker Traefik.
#! /bin/bash
HTTP_PORT=81
HTTPS_PORT=444
sed -i "s/^\( *listen .*\)80/\1$HTTP_PORT/" /usr/syno/share/nginx/*.mustache
sed -i "s/^\( *listen .*\)443/\1$HTTPS_PORT/" /usr/syno/share/nginx/*.mustache
Después de actualizar Synology NAS 918+ a DSM 7, ya no puedo "liberar" los puertos 80 y 443. Obviamente, el script no funciona y Nginx (de DSM) siempre está bloqueando el puerto.
La pregunta es cómo volver a acceder al proxy inverso de la ventana acoplable Traefik utilizando el puerto 80/443 en el nuevo sistema operativo DSM 7.
Respuesta1
Parece que los archivos de configuración ahora están almacenados directamente en /etc/nginx
Lo siguiente funcionó para mí:
#! /bin/bash
HTTP_PORT=81
HTTPS_PORT=444
sed -i "s/^\( *listen .*\)80/\1$HTTP_PORT/" /etc/nginx/nginx.conf*
sed -i "s/^\( *listen .*\)443/\1$HTTPS_PORT/" /etc/nginx/nginx.conf*
Básicamente cambié la ubicación de nginx-config en el script. Todo lo demás es lo mismo. Ahora traefik vuelve a estar disponible.