This page documents the design and requirements for providing console access to running stack services.
Docker and Kubernetes both support the "exec" command, which supports running arbitrary commands in a running container. The "exec" command includes options for creating an interactive session and allocating a pseudo-terminal (pty) to enable interactive access with system commands, such as shells.
In most cases, users are running the "exec" command from the command line and therefore from a terminal emulator (i.e., xterm, terminal, iTerm, etc). The terminal emulators support specific features of older hardware-based terminals. A variety of terminal emulators are available, including Javascript.
Epic: User can access console of running service via GUI and CLI
Story: User can access console of running service via GUI
Story: User can access console of running service via CLI
A prototype has been provided using term.js with a simple go server:
cd $GOPATH/src/github.com
git clone https://github.com/craig-willis/terminal-test
cd terminal-test/server
go build
./server
Open index.html in browser: