gpt4 book ai didi

docker - 无法查看 ASP NET Core Container 的日志

转载 作者:行者123 更新时间:2023-12-01 10:19:56 26 4
gpt4 key购买 nike

您好,我有以下问题:

我有一个 ASP .NET Core docker-ized 并在容器中运行的服务器 docker-compose .我通过 postman 向我的服务器发送请求我得到 500-internal server error .

我试过了:

  • docker attach myserver我在控制台中什么也没有。
  • docker logs myserver我只会得到初始日志(启动)。
  • telnet hostname port似乎可以连接,但我不知道如何创建请求。

  • 我怎样才能拿到 console我的 ASP .NET Core服务器?

    docker-compose
    version: '3.3'
    services:
    db:
    image: redis:4.0.5-alpine
    container_name: redis0

    networks:
    - redis-net
    ports:
    - 6381:6379

    backend:
    image: server
    container_name: server0
    build: ./Server
    command: ["dotnet","Server.dll"]
    depends_on:
    - db
    ports:
    - 9400:9300
    networks:
    - redis-net

    networks:
    redis-net:

    dockerfile (用于服务器)
    FROM microsoft/dotnet:2.1-aspnetcore-runtime 
    WORKDIR /app
    COPY ./publish /app
    EXPOSE 9300

    Startup.cs
    public static IWebHostBuilder CreateWebHostBuilder(string[] args) {
    string port="9300";
    var builder = new WebHostBuilder();
    builder.UseStartup<Startup>();
    var url =$"http://0.0.0.0:{port.ToString()}/";//Address.Default.ToUrl();
    Debug.WriteLine(url);
    builder.UseKestrel().UseUrls(url);
    return builder;

    }

    最佳答案

  • 配置您的 .net core 应用程序以将日志打印到控制台
    E.g. Console.WriteLine("Some application log");
  • 重建并运行容器
    docker-compose builddocker-compose up
  • 获取 container-id用于运行 server容器使用
    docker ps
  • 在另一个命令窗口中运行它以跟踪日志
    docker logs --follow <container-id>
  • 运行它以进入容器的 bash shell
    docker exec -it <container-id> bash
  • 关于docker - 无法查看 ASP NET Core Container 的日志,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53725933/

    26 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com