Ah I figured out why running /usr/sbin/init from shell doesn’t work – you need to use the bash exec command, I guess systemd really wants to be PID 1.
# Requires docker 1.12.1, currently still beta in Docker for Mac
$ docker run -ti --cap-add SYS_ADMIN -p 80:80 local/c7-systemd-httpd bash
[root@e0ae35935b8e /]# /usr/sbin/init
Couldn't find an alternative telinit implementation to spawn.
[root@e0ae35935b8e /]# exec /usr/sbin/init
systemd 219 running in system mode. (+PAM +AUDIT +SELINUX +IMA -APPARMOR +SMACK +SYSVINIT +UTMP +LIBCRYPTSETUP +GCRYPT +GNUTLS +ACL +XZ -LZ4 -SECCOMP +BLKID +ELFUTILS +KMOD +IDN)
Detected virtualization docker.
Detected architecture x86-64.
Welcome to CentOS Linux 7 (Core)!
...