<p>I have the .net core app running on linux docker container, and while taking dumps (core 2.2 or 3.0) I can't open them in the PerfView, </p>

<p>taking dumps according to this instruction:
<a href="https://github.com/dotnet/diagnostics/blob/master/documentation/dotnet-dump-instructions.md" rel="nofollow noreferrer">https://github.com/dotnet/diagnostics/blob/master/documentation/dotnet-dump-instructions.md</a></p>

<p>PerfView shows this error in the logs:</p>

<pre><code>Creating heap dump C:\temp\dumps\dump\dump-1.gcdump from process dump C:\temp\dumps\dump\dump-1.dmp.
HeapDump Error: Microsoft.Diagnostics.Runtime.ClrDiagnosticsException: Could not load crash dump 'C:\temp\dumps\dump\dump-1.dmp', HRESULT: 0x80070057
   at Microsoft.Diagnostics.Runtime.DbgEngDataReader..ctor(String dumpFile)
   at Microsoft.Diagnostics.Runtime.DataTarget.LoadCrashDump(String fileName)
   at GCHeapDumper.InitializeClrRuntime(String processDumpFile, DataTarget&amp; target, ClrRuntime&amp; runtime)
   at GCHeapDumper.DumpHeapFromProcessDump(String processDumpFile)
   at Program.MainWorker(String[] args)
</code></pre>

<p>The dump file is created inside the container and therefore not directly accessible from your machine. (If you are running Windows and Docker for Windows there is even a virtual machine inbetween.)</p>

<p>What you need to do is to copy the dumb file from the container to your host and open it afterwards.
This can be achieved using <code>docker cp</code> command, for example: <code>docker cp &lt;container name&gt;:&lt;path in container&gt;dump-1.gcdump C:\temp\dumps\dump\dump-1.gcdump</code></p>
