2016-11-28 1 views
1

J'essaie d'exécuter l'application de base asp.net sur docker dans Windows 7. J'ai Visual Studio 2015 Enterprise (mise à jour 3) et Visual Studio Outils pour Docker installé. En outre, je suis en mesure d'exécuter l'application dans la configuration de la version.Erreur lors de l'exécution de l'ASP.NET Core WebApp sur Docker dans Windows 7 (débogage)

Je n'ai apporté aucune modification au fichier Dockerfile et je ne compose pas de fichiers, ceux-ci sont créés par défaut lorsque j'ai créé le projet et ajouté le support Docker.

Lorsque j'exécute l'application avec la configuration de débogage, je reçois l'erreur ci-dessous et il ne fonctionne pas tous les conteneurs de docker pour exécuter et déboguer l'application:

Error MSB4018 The "PrepareForLaunch" task failed unexpectedly. 
System.InvalidOperationException: Unable to validate volume mapping. For troubleshooting, follow instructions from http://aka.ms/DockerToolsTroubleshooting 
    at Microsoft.DotNet.Docker.BuildTasks.PrepareForLaunch.<ExecuteAsync>d__0.MoveNext() 
--- End of stack trace from previous location where exception was thrown --- 
    at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task) 
    at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task) 
    at Microsoft.DotNet.Docker.BuildTasks.DockerBaseTask.Execute() 
    at Microsoft.Build.BackEnd.TaskExecutionHost.Microsoft.Build.BackEnd.ITaskExecutionHost.Execute() 
    at Microsoft.Build.BackEnd.TaskBuilder.<ExecuteInstantiatedTask>d__26.MoveNext() SampleCoreApp C:\Program Files (x86)\MSBuild\Microsoft\VisualStudio\v14.0\DotNet\Microsoft.DotNet.Publishing\ImportAfter\Microsoft.DotNet.Docker.targets 70 

Toute aide VOIRE résoudre cette question soit utile.

Répondre

0

Ce problème est dû à un problème de mappage de lecteur ici. J'ai donc supprimé l'un des mappages de lecteurs (-.:/App) et j'ai également changé l'argument source (obj/Docker/empty en.) Dans le fichier docker-compose.dev.debug.yml et cela a fonctionné pour moi.

Fichier précédent (docker-compose.dev.debug.yml):

version: '2' 

services: 
samplecoreapp: 
    build: 
    args: 
     source: obj/Docker/empty 
    labels: 
    - "com.microsoft.visualstudio.targetoperatingsystem=linux" 
    environment: 
    - ASPNETCORE_ENVIRONMENT=Development 
    - DOTNET_USE_POLLING_FILE_WATCHER=1 
    volumes: 
    - .:/app 
    - ~/.nuget/packages:/root/.nuget/packages:ro 
    - ~/clrdbg:/clrdbg:ro 
    entrypoint: tail -f /dev/null 

Après modification:

version: '2' 

services: 
samplecoreapp: 
    build: 
    args: 
     source: . 
    labels: 
    - "com.microsoft.visualstudio.targetoperatingsystem=linux" 
    environment: 
    - ASPNETCORE_ENVIRONMENT=Development 
    - DOTNET_USE_POLLING_FILE_WATCHER=1 
    volumes: 
    - ~/.nuget/packages:/root/.nuget/packages:ro 
    - ~/clrdbg:/clrdbg:ro 
    entrypoint: tail -f /dev/null 

Espérons que cela sera utile pour ceux qui sont confrontés à ce problème.

-1

Cela peut être dû à un problème de partage de volume/partage de lecteur dans Docker, j'ai rencontré ce problème et j'ai corrigé les paramètres de Docker. C'est arrivé à apparaître dans les machines connectées au domaine de l'entreprise où docker a des autorisations limitées par défaut. Pour résoudre ce problème, mettez à jour vos "Shared Drives" à partir de Docker Settings.

Update shared drives

de détails peuvent être trouvés ici https://blogs.msdn.microsoft.com/stevelasker/2016/06/14/configuring-docker-for-windows-volumes/

+0

Que dois-je faire, quand je travaillerai avec Windows 10 conteneur? –