How to understand differences between docker and fly?

Fly transmogrifies runc containers into Firecracker VMs supervised by its own init which in addition to other things is fussy at letting any other process read from stdout.

root is the safest bet to have everything running smoothly, apparently, even if it needn’t be the case.

The specific issue you’re seeing has been discussed a number of times on this very forum. Here’s a recent discussion: Allow non-root users to write to stdout/stderr - #13 by ignoramous

As you (and others) found out Dockerfiles on Fly aren’t the same as Dockerfiles everywhere else. For Fly, Dockerfiles are a convinient way to hook into the existing ecosystem: Early look: "fly launch" That said, it works almost all of the time, until it doesn’t.

1 Like