Emacs in Docker.
You will probably need to run the following to get the GUI to work:
$ xhost +local:docker non-network local connections being added to access control list
After that, the container can be started like any other Docker GUI app:
$ docker run --rm -v $(pwd):/files -v /tmp/.X11-unix:/tmp/.X11-unix \ -e DISPLAY mbodenhamer/emacs [ARGS]
Emacs can also be started in console mode:
$ docker run --rm -it -v $(pwd):/files mbodenhamer/emacs [ARGS]
Whatever directory you want emacs to access should be mapped to the
ONBUILD instructions to enable a custom Emacs setup. The build arguments are as follows:
provision: Path to a script that will run arbitrary provisioning actions. Defaults to
packages: Path to an elisp script that will perform package installation / configuration actions. Defaults to
conf: Path to a file that will be copied to
~/.emacsin the container. Defaults to
uid: UID of the user to use Emacs as. Defaults to 1000.
gid: GID of the user to use Emacs as. Defaults to 1000.