【问题标题】:Error in Publishing .Net Core Web App on Docker Hub在 Docker Hub 上发布 .Net Core Web 应用程序时出错
【发布时间】:2021-09-13 10:15:00
【问题描述】:

我正在学习 docker 和容器。我正在尝试通过 Visual Studio 2019 在 Docker Hub 上发布我的 .Net Core 3.1 Web 应用程序。我在 Windows PC 上,但 Visual Studio 部署环境设置为 Linux,Docker 也设置为 Linux。我也安装了 WSL2(Linux 2 的 Windows 子系统)。此外,Web 应用程序运行良好,同时我可以看到容器和图像已成功创建到 Docker 仪表板(运行)中。但是,在尝试在 Docker Hub 上发布它时,我遇到了错误。

你能帮我看看我的 PC 上缺少哪个部件(它是 azure windows 10 VM)吗?

注意:我也可以毫无问题地运行 linux 容器。 Ubuntu 20 也是从 Windows Shop 安装的。

2021-07-01 10:19:58 AM
Microsoft.WebTools.Azure.Publish.Docker.DockerCommandException: Running the docker.exe tag command failed.

Current context "desktop-linux" is not found on the file system, please check your config file at C:\Users\kulkarnis009\AppData\Local\Temp\7961a412d485473395194d8ad39fe785\config.json
   at Microsoft.WebTools.Azure.Publish.Docker.DockerOperations.ThrowDockerCommandError(String dockerCommand)
   at Microsoft.WebTools.Azure.Publish.Docker.DockerOperations.<DockerTagAsync>d__3.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.WebTools.Azure.Publish.Docker.DockerPublish.<DockerPublishAsync>d__2.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.WebTools.Azure.Publish.ContainerRegistry.ManageContainerRegistry.<PushImageAsync>d__11.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.WebTools.Azure.Publish.PublishProviders.ContainerRegistryProfileVisual.<PostPublishAsync>d__38.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.Publish.Framework.Nexus.PublishProfilesServiceImpl.ServerProjectProfilesManager.<RunPublishTaskAsync>d__53.MoveNext()

===================

【问题讨论】:

    标签: azure docker asp.net-core dockerhub


    【解决方案1】:

    在文件中

    file:///C:/Users/UserName/AppData/Local/Temp/c69e796a148440f18675b80111e06796/config.json
    

    更换桌面-linux

    {
      "auths": {},
      "credsStore": "desktop",
      "currentContext": "default",
      "stackOrchestrator": "swarm",
      "HttpHeaders": {
        "X-Meta-Source-Client": "vs/web/publish"
      }
    }
    

    currentContext 有 desktop-linux,我只是放了“默认”

    【讨论】:

    • 也为我工作。但是在“temp”中编辑文件会持续多长时间?也许应该编辑 c:\Users\\.docker 中的文件...
    【解决方案2】:

    我遇到了同样的问题,我可以通过使用以下命令将 docker 上下文切换回默认值(它设置为 desktop-linux)来解决:

    docker context use default
    

    【讨论】:

    • 嗨,克里斯。感谢您的意见。但是,我已尝试在命令提示符下执行此命令,并尝试再次将应用程序发布到 Docker 集线器中。但没有运气。是否还有其他我需要遵循的步骤。另请注意,我的 docker 设置为 Linux 环境并安装了 WSL2。我只希望将下划线环境作为 LInux。我想我的虚拟机上缺少一些配置。让我知道你的想法。
    【解决方案3】:
    猜你喜欢
    • 2019-01-05
    • 2023-03-16
    • 1970-01-01
    • 2021-08-29
    • 1970-01-01
    • 1970-01-01
    • 2017-02-26
    • 1970-01-01
    • 2020-08-08
    相关资源
    最近更新 更多