6
votes

Comment modifier la prise en charge du système d'exploitation Docker pour un projet d'application Web .Net Core?

J'ai un projet d'application Web .NET Core dans lequel j'ai choisi le mauvais système d'exploitation sous la case "Activer la prise en charge Docker": entrez la description de l'image ici

Comment changer cela pour un projet existant? Et pour être clair, je veux cibler Linux, pas "Passer aux conteneurs Windows ..." dans le menu fixe.


0 commentaires

4 Réponses :


6
votes

Cela s'est avéré facile, et je l'ai fait en éditant le fichier csproj: Changement de Windows en Linux et recharger.

Je ne sais toujours pas où vous feriez cela à partir de Visual Studio (si possible).


0 commentaires

1
votes

Si un seul projet est présent dans la solution, je supprimerais le projet associé à docker-compose.dcproj et Dockerfile dans le projet API. Après cela, je ferais un clic droit et ajouterais à nouveau le support docker à ce projet.

Cela créerait un nouveau fichier docker avec l'image de base Linux.

Et le nouveau dcproj aura linux mentionné

<DockerTargetOS>Linux</DockerTargetOS>


0 commentaires

0
votes

Pour les projets ASP.NET Core ciblant .NET Core, il existe deux options pour ajouter la prise en charge de Docker via les outils. Ouvrez le projet dans Visual Studio et choisissez l'une des options suivantes:

  • Sélectionnez Docker Support dans le menu Projet.
  • Cliquez avec le bouton droit sur le projet dans l'Explorateur de solutions et sélectionnez Ajouter> Prise en charge de Docker.

vous devriez voir une fenêtre comme celle-ci

 entrez la description de l'image ici

Et sélectionnez le système d'exploitation souhaité.

Vous pouvez trouver plus d'informations ICI


0 commentaires

0
votes

Dans mon cas, j'utilise un projet d'API .Net Core 3.1 et la simple modification du fichier de projet n'a pas fonctionné. J'ai également dû indiquer que l'image du docker était différente. Voici ce que j'ai fait:

  1. Dans l'Explorateur de solutions, faites un clic droit sur le projet, sélectionnez "Décharger"

  2. Faites un clic droit sur le projet, modifiez-le (Le fichier de projet peut également être édité à l'extérieur. Même clic droit, Ajouter, le support Docker a fonctionné une fois)

  3. Comme mentionné par d'autres, modifiez:

    Windows

    À:

    Linux

    (remplacez uniquement "Windows" par "Linux")

  4. Modifiez le nom de l'image. Modifiez le fichier appelé "Dockerfile". Changement:

    DE mcr.microsoft.com/dotnet/core/aspnet:3.1-nanoserver-1903 AS base

    À:

    DE mcr.microsoft.com/dotnet/core/aspnet:3.1-buster-slim AS base

    J'ai également changé le nom de la compilation en conséquence. Modifié:

    DE mcr.microsoft.com/dotnet/core/sdk:3.1-nanoserver-1903 AS build

    À:

    DE mcr.microsoft.com/dotnet/core/sdk:3.1-buster AS build

Les noms des images peuvent être différents. Assurez-vous simplement de remplacer l'image Windows par l'image Linux.


0 commentaires