Search code examples
.netdockerubuntu.net-coredocker-compose

.NET 8 Microsoft Docker Image: Failed to create CoreCLR, HRESULT: 0x80070008


I upgraded my project to .NET 8 today; I followed the official guide on migrating from .NET 7 to .NET 8. However, upon deploying the application, I've encountered a problem.

Locally, the solution builds and runs fine. However, on my Ubuntu server, when I run docker-compose up -d my MVC application container fails. When I look at the logs via docker logs <container id> I simply see:

Failed to create CoreCLR, HRESULT: 0x80070008

I did some Googling and noticed some were saying to add ENV COMPlus_EnableDiagnostics=0 which I did, but that made no difference.

I'm not sure what to do now; everything seems to be OK.

The code is open-source, here is the Dockerfile. And here is what I have in my docker-compose file.

version: "3.7"

services:
  bejebeje-mvc:
    image: bejebeje/mvc:latest
    ports:
      - "5010:5005"
    env_file:
      - ./variables.env
    depends_on:
      - bejebeje-main-db
  bejebeje-main-db:
    image: postgres:12.4
    ports:
      - "8002:5432"
    volumes:
      - data-volume:/var/lib/postgresql/data
    env_file:
      - ./variables.env

networks:
  default:
    external:
      name: bejebeje_net

volumes:
  data-volume:

What am I missing?


Solution

  • I fixed it by upgrading Docker Engine on my Ubuntu server.

    The server was running Docker Engine version 20.xxx, but the latest version was 24.xxx