I was thinking about unit test to test your functions,
and building your code and installing it into a Docker container.
That's the very point: s6 is organized into several small
executables interacting together, so unit tests for functions are
pretty difficult to write. The units that would need testing are
individual executables, so you'd need to come up with a mock
environment to test every executable separately. I'm not sure how
to proceed with this, and have not prioritized it so far because
hand-testing is still manageable for now and I have much more
interesting projects to work on :P
Projects with PID 1 in Docker exist: https://github.com/Yelp/dumb-init
Oh, definitely, and s6 is already used in numerous Docker containers.
Most people who want to do that use the s6-overlay project:
Some big companies (Badoo, for instance) rely on s6 to power their
containers, so I think it's a good testimony to the fact that it works