I needed to look at your comment for 10 minutes before I got what you mean. So you want containers that run on any POSIX operating systems?
You can do this with ptrace() which is in POSIX, but its going to be slow for i/o heavy applications. Unfortunately POSIX doesn't provide anything else (seccomp would already be a step up). See also proot[1], gVisor[2] and User Mode Linux[3] which all use ptrace().
Sorry, here's a slightly more serious attempt at a decent comment: my hunch is that most of what people look for in Docker could be accomplished by simple file system isolation and a few env variables. Something that could be hacked together with chroot and shell scripts.
This much simpler solution could be replicated in basically any decent OS and wouldn't require shipping an entire Linux kernel and deal with slow IO and the network hoops to jump through on anything that isn't Linux.
The same directory of ready-made solutions that Docker enjoys today could be rebuilt uppon this simpler stack.
When you realize that linking to the right libraries gets you most of the way there already, you begin to think there's a gem of a solution hidden in plain sight among all this mess.
If you mean just Linux and FreeBSD. Even with those two, the API is the same in name only. It's wildly different. Shouldn't share the same name really.