This is the mail archive of the
cygwin
mailing list for the Cygwin project.
Docker, containers, and Cygwin
- From: "Mike Gran via cygwin" <cygwin at cygwin dot com>
- To: cygwin at cygwin dot com
- Date: Fri, 22 Mar 2019 09:54:05 -0700
- Subject: Docker, containers, and Cygwin
- Reply-to: Mike Gran <spk121 at yahoo dot com>
Hello good people,
This isn't a question so much as a random musing...
From what I understand, Cygwin works by translating POSIX-like calls
into Windows API. Or, to be more specific, the version of newlib that
Cygwin provides links to Windows-provided dlls that make Windows API
calls.
And Docker on Windows works by creating a layer that allows some
subset of the Windows API to be called by the image in the container,
passing those API calls to the OS kernel.
I tried (non-exhaustively) to figure out what Windows kernel APIs can
actually make it through the Docker infrastructure from an image to
the Windows kernel. This led me to ponder if the Windows APIs that
Cygwin uses in its emulation layer are a subset of the APIs that make
it through the Windows Docker containers.
My guess is that all the API that Cygwin uses *would* pass through
container, since is it basic stuff. (Of course, the file and socket
I/O may be intercepted by the container depending on its permissions.)
Unfortunately, there doesn't seem to be handy reference about how
Windows Docker containers work.
Anyway, that's today's musing.
-Mike Gran
--
Problem reports: http://cygwin.com/problems.html
FAQ: http://cygwin.com/faq/
Documentation: http://cygwin.com/docs.html
Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple