快速搭建网页 Linux 终端 Demo


快速搭建网页 Linux 终端 Demo

最近,学校的 Linux 课程开始了,一些同学可能在 Linux 的安装上多多少少有问题。所以打算准备一个开箱即用的环境,你可能会提到 SSH,可是都这样了,Web Terminal 不是更“开箱即用”吗?

Web Terminal

这里使用了 rabchev/web-terminal, 配置比较简单。两条命令即可。

npm install web-terminal -g
web-terminal --port 8088

在我这里会有 io.listen 相关报错, sed -i 's/io.listen/io/g' /usr/local/lib/node_modules/web-terminal/lib/terminal.js 即可。

Dockerlization

由于你不知道用户会搞出什么名堂,最好还是虚拟化一下。

Dockerfile

FROM node:14 # node >= 10

RUN sed -i 's/deb.debian.org/mirrors.tuna.tsinghua.edu.cn/g' /etc/apt/sources.list # 清华源
RUN apt-get update
RUN apt-get install -y x11-apps traceroute psmisc # cal commands

# could add npm mirror
RUN npm install web-terminal -g
RUN sed -i 's/io.listen/io/g' /usr/local/lib/node_modules/web-terminal/lib/terminal.js

RUN useradd -m -s /bin/bash nefu
RUN export WEB_SHELL=bash

EXPOSE 8088

CMD [ "su", "-", "nefu", "-c", "web-terminal --port 8088" ] # must be list form

启动一气呵成,置于守护态后设置自动重启即可。


文章作者: sfc9982
版权声明: 本博客所有文章除特別声明外,均采用 CC BY-NC-ND 4.0 许可协议。转载请注明来源 sfc9982 !
  目录