Últimamente he pasado mucho tiempo con Docker. Docker Desktop en Windows es excelente y mejora cada día. Ahora que WSL2 (Subsistema de Windows para Linux) se implementará de forma estable en las próximas semanas y Docker Desktop es compatible con WSL para alojar contenedores de Linux directamente, me encuentro usando Visual Studio para desarrollar mis sitios en Docker.
Visual Studio Container Tools también está mejorando activamente y la última versión es bastante buena. Es probable que ya TIENES esto, ya que la ventana de la herramienta Contenedores ahora está incluida en Visual Studio 2019 a partir de la versión 16.4 Preview 2 y superior.
Lo primero que es impresionante es que Visual Studio ahora intenta ayudarlo a llegar a un lugar exitoso con una guía útil, ya que a veces la configuración puede ser desalentadora.
Cuando crea o abre un proyecto habilitado para Docker:
- Las herramientas de contenedor de VS lo ayudan a instalar Docker Desktop
- Las herramientas de contenedor VS aseguran que Docker Desktop se esté ejecutando
Ya tiene las herramientas de contenedor si instaló Web o Azure Workload en Visual Studio 2019 y está incluido en la comunidad gratuita de Visual Studio 2019.
Puede habilitar Docker en un proyecto con una casilla de verificación cuando lo crea O puede hacer clic con el botón derecho en Agregar compatibilidad con Docker después del hecho.
Cuando se trabaja con .NET Core, Container Tools será un excelente Dockerfile de varias etapas que encapsula las mejores prácticas. Utiliza capas de Docker para compilar dentro de Docker con el SDK de .NET, pero luego se publica en un contenedor de tiempo de ejecución más pequeño para obtener la imagen resultante más pequeña posible y lograr la máxima densidad.
Depuración de varios contenedores
La depuración de sistemas reales con múltiples contenedores ha sido un desafío en el pasado. VS2019 ahora tiene soporte integrado para Container Orchestrator. ¡Esta captura de pantalla muestra que Docker Compose aparece como un destino de depuración dentro de la barra de herramientas estándar de VS2019!
Una vez que tiene un montón de contenedores en ejecución, la Herramienta de contenedores encuentra un buen equilibrio entre mostrarle los registros de texto y quitarse de en medio, pero también le brinda una GUI para iniciar, detener y administrar múltiples contenedores en ejecución.
Puede ver a continuación las imágenes que tengo, los Contenedores de soluciones. ¡Incluso puedo hacer clic derecho y Adjuntar al proceso dentro de un contenedor Linux en ejecución! Una vez más, todos usan WSL2 y muy rápido.
¡Próximamente en Visual Studio! Depuración nativa de WSL2
Me gustan mis contenedores, PERO si solo desea desarrollar en Linux directamente (sin contenedores), entonces este es uno de los "próximos próximos" que más le entusiasmarán:¡Depuración de WSL 2! Próximamente en Marketplace como una vista previa con un plan para enviar en futuras versiones de herramientas de Visual Studio, ¡podrá seleccionar WSL2 (Linux) como objetivo de compilación y depuración! Eso significa desarrollar/probar/ejecutar Linux nativo en Windows directamente desde VS.
Recuerde que WSL2 usa un kernel de Linux real, por lo que no hay emuladores aquí. El WSL2 Linux se inicia en aproximadamente un segundo y estará depurando RÁPIDAMENTE. ¡WSL2 se está implementando ahora!
Eso significa puntos de interrupción y depuración completa en Linux desde Visual Studio 2019 en Windows. Scott Hunter y yo hablamos sobre esto y mostramos una demostración en nuestra charla "Journey to One .NET" en BUILD este año que puedes ver gratis aquí.
Si desea todas estas bonitas herramientas de contenedores, instale VS2019 o simplemente ejecute el instalador de Visual Studio y ACTUALICE su instalación existente.
Patrocinador: El patrocinador de esta semana soy... ¡yo! Este blog y mi podcast han sido un trabajo de amor por más de 18 años. Su patrocinio paga mis facturas de alojamiento para ambos Y me permite comprar dispositivos para revisar Y el taco ocasional. ¡Únete a mí!