Herramientas de usuario

Herramientas del sitio


guias:traefikv2

Diferencias

Muestra las diferencias entre dos versiones de la página.

Enlace a la vista de comparación

Ambos lados, revisión anteriorRevisión previa
Próxima revisión
Revisión previa
guias:traefikv2 [2021/10/29 10:24] Sergio Alvariñoguias:traefikv2 [2021/10/29 10:35] (actual) – [Nuestro primer servicio: Portainer] Sergio Alvariño
Línea 239: Línea 239:
 Vamos con un ejemplo un pelín más complejo. Vamos a definir un contenedor de //Traefik// que simplemente expone su //Dashboard//, de momento no vamos a definir más contenedores, pero podremos añadirlos a este escenario en el futuro. Vamos con un ejemplo un pelín más complejo. Vamos a definir un contenedor de //Traefik// que simplemente expone su //Dashboard//, de momento no vamos a definir más contenedores, pero podremos añadirlos a este escenario en el futuro.
  
-La gracia del ejemplo es que //Traefik// obtendrá los certificados SSL del dominio (p.ej. miDominio.com) automáticamente desde [[https://letsencrypt.org/|//Let’s Encrypt//]]. Y expondrá el //dashboard// en un subdominio, digamos en https://dashtraefik.miDominio.com.+La gracia del ejemplo es que //Traefik// obtendrá los certificados SSL del dominio (p.ej. miDominio.com) automáticamente desde //[[https://letsencrypt.org/|Let’s Encrypt]]//. Y expondrá el //dashboard// en un subdominio, digamos en https://dashtraefik.miDominio.com.
  
 Preparamos los directorios y los ficheros de trabajo. Preparamos los directorios y los ficheros de trabajo.
Línea 467: Línea 467:
 </code> </code>
  
-Una vez definido nuestro //middleware// de tipo //basicAuth// solo nos falta definir el [[https://doc.traefik.io/traefik/routing/routers/|//router//]] para nuestro //dashboard//. Lo llamaremos ''%%mydash%%'':+Una vez definido nuestro //middleware// de tipo //basicAuth// solo nos falta definir el //[[https://doc.traefik.io/traefik/routing/routers/|router]]// para nuestro //dashboard//. Lo llamaremos ''%%mydash%%'':
  
 <code yaml> <code yaml>
Línea 571: Línea 571:
  
   * **//secureHeaders//**\\ Que define una serie de cabeceras que vamos a aplicar a todas las conexiones HTTP de nuestro //Traefik//.   * **//secureHeaders//**\\ Que define una serie de cabeceras que vamos a aplicar a todas las conexiones HTTP de nuestro //Traefik//.
-  * **//frameDeny: true//**\\ Para evitar ataques [[https://developer.mozilla.org/en-US/docs/Web/Security/Types_of_attacks#click-jacking|//click-jacking//]]+  * **//frameDeny: true//**\\ Para evitar ataques //[[https://developer.mozilla.org/en-US/docs/Web/Security/Types_of_attacks#click-jacking|click-jacking]]//
   * **//sslRedirect: true//**\\ Para permitir solo peticiones //https//   * **//sslRedirect: true//**\\ Para permitir solo peticiones //https//
-  * **//browserXssFilter//**\\ Para paliar ataques de [[https://developer.mozilla.org/en-US/docs/Web/Security/Types_of_attacks#cross-site_scripting_xss|//cross site scripting//]]+  * **//browserXssFilter//**\\ Para paliar ataques de //[[https://developer.mozilla.org/en-US/docs/Web/Security/Types_of_attacks#cross-site_scripting_xss|cross site scripting]]//
   * **//contentTypeNosniff: true//**\\ Ver [[https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/X-Content-Type-Options|referencia]]   * **//contentTypeNosniff: true//**\\ Ver [[https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/X-Content-Type-Options|referencia]]
   * **//forceSTSHeader: true//**:\\ fuerza cabeceras STS para todas las conexiones, con el flag //preload// y la directiva //includeSubdomains// y un //max-age// de un año.   * **//forceSTSHeader: true//**:\\ fuerza cabeceras STS para todas las conexiones, con el flag //preload// y la directiva //includeSubdomains// y un //max-age// de un año.
Línea 788: Línea 788:
 Añadimos un nuevo servicio ''%%portainer%%'', con las opciones de rearranque y de seguridad iguales a las de //Traefik//. Mapeamos también el fichero ''%%/etc/localtime%%'' para que el contenedor se ponga en hora con el //host//; y el //socket// ''%%docker.sock%%'' que //Portainer// necesita (//Portainer// es un //frontend// para //Docker//) Añadimos un nuevo servicio ''%%portainer%%'', con las opciones de rearranque y de seguridad iguales a las de //Traefik//. Mapeamos también el fichero ''%%/etc/localtime%%'' para que el contenedor se ponga en hora con el //host//; y el //socket// ''%%docker.sock%%'' que //Portainer// necesita (//Portainer// es un //frontend// para //Docker//)
  
-Añadimos también las etiquetas para informar a //Traefik// del nuevo servicio* El servicio se llama //portainer// * Acepta peticiones en el puerto 9000 * //Portainer// usará el //entry point// ''%%https%%'' de //Traefik// * Y la regla de enrutado será ''%%Host(`portainer.yourdomain.com`)%%''+Añadimos también las etiquetas para informar a //Traefik// del nuevo servicio
 +  * El servicio se llama //portainer// 
 +  * Acepta peticiones en el puerto 9000 
 +  * //Portainer// usará el //entry point// ''%%https%%'' de //Traefik// 
 +  * Y la regla de enrutado será ''%%Host(`portainer.yourdomain.com`)%%''
  
 Una vez completada la configuración del DNS, podemos levantar nuestro nuevo servicio con: Una vez completada la configuración del DNS, podemos levantar nuestro nuevo servicio con:
guias/traefikv2.1635503055.txt.gz · Última modificación: 2021/10/29 10:24 por Sergio Alvariño