首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >将调试器从visual studio 2019附加到本地docker linux容器失败

将调试器从visual studio 2019附加到本地docker linux容器失败
EN

Stack Overflow用户
提问于 2020-02-28 18:05:55
回答 2查看 2.4K关注 0票数 4

问题是,当我尝试使用Debug将调试器从vs2019附加到进程->、Linux(Linux Container) ->时,选择该进程并单击attach。

我得到了错误说明

代码语言:javascript
运行
复制
Failed to launch debug adapter 'coreclr'.
Failed to copy files.


Initialization log:
Determining user folder on remote system...
Checking for existing installation of debugging tools...
Downloading debugger launcher...
Creating debugger installation folder: /root/.vs-debugger
Copying debugger launcher to /root/.vs-debugger/GetVsDbg.sh
Failed: Failed to copy files.
The program '[360] bash' has exited with code -1 (0xffffffff).

由于某种原因,visual studio似乎尝试将调试器复制到正在运行的容器,但失败了。

下面是简单的dockerfile和docker-compose脚本

Dockerfile

代码语言:javascript
运行
复制
FROM microsoft/aspnetcore-build:1.1.2

RUN apt-get update && apt-get install -y unzip

RUN curl -sSL \
   https://aka.ms/getvsdbgsh | bash /dev/stdin -v vs2019 -l /root/.vs-debugger

COPY node_modules/wait-for-it.sh/bin/wait-for-it /tools/wait-for-it.sh

RUN chmod +x /tools/wait-for-it.sh

ENV DBHOST=dev_mysql WAITHOST=dev_mysql WAITPORT=3306

ENV DOTNET_USE_POLLING_FILE_WATCHER=true 

EXPOSE 80/tcp

VOLUME /app

WORKDIR /app

ENTRYPOINT dotnet restore \
    && /tools/wait-for-it.sh $WAITHOST:$WAITPORT --timeout=0 \
       && dotnet watch run --environment=Development

docker-compose.yml

代码语言:javascript
运行
复制
version: "3"

volumes:
  productdata:

networks:
  backend:

services:
  mysql:
    image: "mysql:8.0.0"
    volumes:
      - productdata:/var/lib/mysql
    networks:
      - backend
    environment:
      - MYSQL_ROOT_PASSWORD=mysecret
      - bind-address=0.0.0.0

  mvc:
    build:
      context: .
      dockerfile: Dockerfile
    volumes:
      - .:/app
      - /app/obj
      - /app/bin
      - ~/.nuget:/root/.nuget
      - /root/.nuget/packages/.tools
    ports:
      - 3000:80
    networks:
      - backend
    environment:
      - DBHOST=mysql
      - WAITHOST=mysql
    depends_on:
      - mysql

注意:-我已经勾选了坞站主机上的共享驱动器

有什么线索吗?

EN

回答 2

Stack Overflow用户

发布于 2021-08-27 08:58:10

我有工作要做-

请注意,每个运行的容器只能执行一次此操作,如果使用新代码重新部署容器,则必须再次执行此操作。

在容器上的可视Studio

  • Right-click中找到该容器,并选择“Open terminal”

  • Inside

您也可以使用以下命令一次性运行所有命令4-9:

apt-get update && apt-get install procps -y && apt-get install wget -y && mkdir /root/.vs-debugger && curl -sSL https://aka.ms/getvsdbgsh -o‘/root/.vs-debugger/GetVsDbg.sh’&& bash /root/.VS-debugger/GetVsDbg.sh -v最新的-l /vsdbg

票数 0
EN

Stack Overflow用户

发布于 2020-03-03 14:31:40

尽管我已经将当前用户帐户添加到组中,但由于某种原因,visual studio似乎无法访问docker-users组。

解决方法是创建新的windows用户并将其添加到docker-users组。它就像一种护身符

票数 -1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/60449441

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档