您的位置:首页 > 运维架构 > Docker

webssh docker 镜像制作及其应用

2019-04-11 02:09 387 查看

webssh介绍
webssh 一个简单的Web应用程序,用作连接到ssh服务器的ssh客户端。 它是用Python编写的,基于龙卷风,paramiko和xterm.js。

特征
支持SSH密码验证,包括空密码。
支持SSH公钥认证,包括DSA RSA ECDSA Ed25519密钥。
支持加密密钥。
支持全屏终端。
终端窗口可调整大小。
自动检测ssh服务器的默认编码。
现代浏览器支持Chrome,Firefox,Safari,Edge,Opera。

官网:https://pypi.org/project/webssh/

直接安装在虚拟机上比较麻烦,不利于分享,
于是制作了一个alpine 镜像,
Dockerfile 内容如下:

FROM python:3.7.3-alpine3.9
RUN sed -i 's/dl-cdn.alpinelinux.org/mirrors.ustc.edu.cn/g' /etc/apk/repositories
RUN apk add --no-cache --virtual .build-deps binutils-gold curl g++ gcc gnupg libgcc linux-headers make libffi-dev openssl-dev \
&& rm -rf /var/cache/apk/*

RUN pip3 install webssh -i https://pypi.tuna.tsinghua.edu.cn/simple

RUN apk del .build-deps
EXPOSE 80/tcp 22/tcp 443/tcp 8000/tcp

ENTRYPOINT  ["wssh", "--port=80", "FOREGROUND"]

下面是编译镜像的操作:
docker build -t ascs/webssh:alpine-3.9 .

或者:
docker pull ascs/webssh:alpine-3.9

验证是否可以正常使用:
docker stop webssh;
docker rm webssh;
docker run -d --privileged --name webssh -p 80:80 webssh-1.0.3:alpine-3.9


非常方便。
特别是用于容器云平台之上, 可以方便的在不同虚拟机或支持ssh 连接的容器直接访问。
比直接在第三方电脑上操作,安全行提高了不少。

还可以用于跳转机的隔离.

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: