Web应用中GoTTY终端工具的安装以及用法
发表于:2026-11-01 作者:千家信息网编辑
千家信息网最后更新 2026年11月01日,本篇文章为大家展示了Web应用中GoTTY终端工具的安装以及用法,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。GoTTY 是一个简单的命令行工具,可将您的 C
千家信息网最后更新 2026年11月01日Web应用中GoTTY终端工具的安装以及用法
本篇文章为大家展示了Web应用中GoTTY终端工具的安装以及用法,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。
GoTTY 是一个简单的命令行工具,可将您的 CLI 工具变成 Web 应用。
1、安装 GoTTY
# Mac 版 brew install yudai/gotty/gotty
如果你有 GO 的环境,也可以通过如下方式安装:
go get github.com/yudai/gotty
2、GoTTY 用法
Usage: gotty [options][ ]
options
--address value, -a value IP address to listen (default: "0.0.0.0") [$GOTTY_ADDRESS] --port value, -p value Port number to liten (default: "8080") [$GOTTY_PORT] --permit-write, -w Permit clients to write to the TTY (BE CAREFUL) [$GOTTY_PERMIT_WRITE] --credential value, -c value Credential for Basic Authentication (ex: user:pass, default disabled) [$GOTTY_CREDENTIAL] --random-url, -r Add a random string to the URL [$GOTTY_RANDOM_URL] --random-url-length value Random URL length (default: 8) [$GOTTY_RANDOM_URL_LENGTH] --tls, -t Enable TLS/SSL [$GOTTY_TLS] --tls-crt value TLS/SSL certificate file path (default: "~/.gotty.crt") [$GOTTY_TLS_CRT] --tls-key value TLS/SSL key file path (default: "~/.gotty.key") [$GOTTY_TLS_KEY] --tls-ca-crt value TLS/SSL CA certificate file for client certifications (default: "~/.gotty.ca.crt") [$GOTTY_TLS_CA_CRT] --index value Custom index.html file [$GOTTY_INDEX] --title-format value Title format of browser window (default: "{{ .command }}@{{ .hostname }}") [$GOTTY_TITLE_FORMAT] --reconnect Enable reconnection [$GOTTY_RECONNECT] --reconnect-time value Time to reconnect (default: 10) [$GOTTY_RECONNECT_TIME] --max-connection value Maximum connection to gotty (default: 0) [$GOTTY_MAX_CONNECTION] --once Accept only one client and exit on disconnection [$GOTTY_ONCE] --timeout value Timeout seconds for waiting a client(0 to disable) (default: 0) [$GOTTY_TIMEOUT] --permit-arguments Permit clients to send command line arguments in URL (e.g. http://example.com:8080/?arg=AAA&arg=BBB) [$GOTTY_PERMIT_ARGUMENTS] --width value Static width of the screen, 0(default) means dynamically resize (default: 0) [$GOTTY_WIDTH] --height value Static height of the screen, 0(default) means dynamically resize (default: 0) [$GOTTY_HEIGHT] --ws-origin value A regular expression that matches origin URLs to be accepted by WebSocket. No cross origin requests are acceptable by default [$GOTTY_WS_ORIGIN] --term value Terminal name to use on the browser, one of xterm or hterm. (default: "xterm") [$GOTTY_TERM] --close-signal value Signal sent to the command process when gotty close it (default: SIGHUP) (default: 1) [$GOTTY_CLOSE_SIGNAL] --close-timeout value Time in seconds to force kill process after client is disconnected (default: -1) (default: -1) [$GOTTY_CLOSE_TIMEOUT] --config value Config file path (default: "~/.gotty") [$GOTTY_CONFIG] --version, -v print the version3、实践
# 示例 gotty -w python3
访问 http://127.0.0.1:8080 即可在线体验 Python3 环境。
进阶篇
容器化时代,遇到一些问题的时候,会进入容器内部排查问题,依靠命令行确实可以解决,但是效率较低,如果将容器作为 Web 可访问的应用,那么处理问题就会便捷很多。
下面将介绍如何使用 GoTTY 连接 k8s 集群中的任意容器。
1、构建 GoTTY Docker 镜像
已构建好的镜像:registry.cn-beijing.aliyuncs.com/tlab/k8s-gotty:latest
gotty:可运行的 gotty 程序,查看 [Releases]列表,选择合适的
kubernetes.repo:用于下载 kubectl
[kubernetes] name=Kubernetes baseurl=https://mirrors.aliyun.com/kubernetes/yum/repos/kubernetes-el7-x86_64/ enabled=1 gpgcheck=1 repo_gpgcheck=1 gpgkey=https://mirrors.aliyun.com/kubernetes/yum/doc/yum-key.gpg https://mirrors.aliyun.com/kubernetes/yum/doc/rpm-package-key.gpg
Dockerfile:用于构建镜像
FROM centos:latest RUN yum install -y epel-release kde-l10n-Chinese glibc-common wget RUN localedef -c -f UTF-8 -i zh_CN zh_CN.utf8 ENV LC_ALL zh_CN.utf8 ADD gotty /root/ ADD kubernetes.repo /etc/yum.repos.d/ RUN yum -y install kubectl WORKDIR /root EXPOSE 8080 CMD ["./gotty", "-w", "--permit-arguments", "kubectl", "exec", "-it", "-n"]
2、在 k8s 集群中运行 GoTTY
kind: Deployment apiVersion: apps/v1 metadata: name: gotty namespace: default spec: replicas: 1 selector: matchLabels: k8s-app: gotty template: metadata: labels: k8s-app: gotty spec: serviceAccountName: <此处填具有合适权限的k8s用户名> containers: - name: gotty image: registry.cn-beijing.aliyuncs.com/tlab/k8s-gotty ports: - containerPort: 8080 protocol: TCP
3、暴露 GoTTY 服务
kind: Service apiVersion: v1 metadata: labels: k8s-app: gotty name: gotty-service namespace: default spec: ports: - port: 80 targetPort: 8080 nodePort: 38080 selector: k8s-app: gotty type: NodePort
4、访问容器
在终端里,进入容器的命令是:
kubectl exec -it -n
那么,利用 GoTTY 访问则是 http://
上述内容就是Web应用中GoTTY终端工具的安装以及用法,你们学到知识或技能了吗?如果还想学到更多技能或者丰富自己的知识储备,欢迎关注行业资讯频道。
容器
工具
应用
终端
命令
镜像
问题
内容
技能
环境
知识
集群
运行
便捷
合适
简明
简明扼要
可以通过
就是
效率
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
互联网公司 科技公司
北京互联网科技有限公司
上海挚品互联网科技
长亮科技互联网金融
撒么互联网科技公司
上海亿帐通互联网科技
互联网金融监管科技
联恩商钥互联网科技有限公司
互联网科技生活的内容
中国最先进互联网科技公司
须眉科技是互联网公司吗
央行互联网金融科技公司
辽宁互联网新科技
河南住房之家互联网科技
互联网金融科技元年
珠海东科互联网科技有限公司
云南互联网科技学费
好易买互联网科技
科技互联网公司两年变化
恒生科技指数 中概互联网
互联网科技园
互联网金融 科技金融
兼蜜互联网科技
互联网科技宣传片
广州优美互联网科技
智腾互联网科技有限公司
中国互联网公司排名锤子科技
图游互联网科技
世界互联网科技成果奖
数字互联网科技有限公司