Karton is an Open Source solution, based on Docker, designed to be able to launch programs created for different operating systems. Actually, it allows running Linux programs in macOS, in other Linux distributions and in different architectures.
This free software takes advantage of Docker container technology to implement in a simple way Linux operating systems, install the needed packages and directories that should be made available for the host system. It converts the containers into semi-persistent and facilitates the management of containers and Docker in general.
A new version has been released, Karton 1.0, which incorporates improvements such as quick access to the disk in macOS, a better synchronization of the clock with the container, or the possibility of setting environment variables in the command line.
More information and downloads in GitHub.