ghcr.io/billchurch/webssh2:4.0.0 linux/amd64

ghcr.io/billchurch/webssh2:4.0.0 - 国内下载镜像源 浏览次数:8

webssh2是一个开源的基于Web的SSH客户端工具,允许用户通过浏览器连接到远程SSH服务器,实现终端交互等功能,便于在无本地SSH客户端的场景下进行远程操作。

源镜像 ghcr.io/billchurch/webssh2:4.0.0
国内镜像 swr.cn-north-4.myhuaweicloud.com/ddn-k8s/ghcr.io/billchurch/webssh2:4.0.0
镜像ID sha256:8e4ecd1997b979166c4fd2c67d78356007f67a920ed1c2ac602ca117e570935c
镜像TAG 4.0.0
大小 182.12MB
镜像源 ghcr.io
CMD node dist/index.js
启动入口 /sbin/tini --
工作目录 /srv/webssh2
OS/平台 linux/amd64
浏览量 8 次
贡献者
镜像创建 2026-02-02T13:49:24.135363266Z
同步时间 2026-02-06 16:31
更新时间 2026-02-06 19:08
开放端口
2222/tcp
环境变量
PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin NODE_VERSION=22.22.0 YARN_VERSION=1.22.22 NODE_ENV=production PORT=2222 WEBSSH2_LISTEN_IP=0.0.0.0 WEBSSH2_LISTEN_PORT=2222
镜像标签
2026-02-02T13:48:57.024Z: org.opencontainers.image.created Web SSH Client using ssh2, socket.io, xterm.js, and express. webssh webssh2: org.opencontainers.image.description MIT: org.opencontainers.image.licenses ccaa513dbad10015e41071236762a96b123e3aa1: org.opencontainers.image.revision https://github.com/billchurch/webssh2: org.opencontainers.image.source webssh2: org.opencontainers.image.title https://github.com/billchurch/webssh2: org.opencontainers.image.url latest: org.opencontainers.image.version

Docker拉取命令

docker pull swr.cn-north-4.myhuaweicloud.com/ddn-k8s/ghcr.io/billchurch/webssh2:4.0.0
docker tag  swr.cn-north-4.myhuaweicloud.com/ddn-k8s/ghcr.io/billchurch/webssh2:4.0.0  ghcr.io/billchurch/webssh2:4.0.0

Containerd拉取命令

ctr images pull swr.cn-north-4.myhuaweicloud.com/ddn-k8s/ghcr.io/billchurch/webssh2:4.0.0
ctr images tag  swr.cn-north-4.myhuaweicloud.com/ddn-k8s/ghcr.io/billchurch/webssh2:4.0.0  ghcr.io/billchurch/webssh2:4.0.0

Shell快速替换命令

sed -i 's#ghcr.io/billchurch/webssh2:4.0.0#swr.cn-north-4.myhuaweicloud.com/ddn-k8s/ghcr.io/billchurch/webssh2:4.0.0#' deployment.yaml

Ansible快速分发-Docker

#ansible k8s -m shell -a 'docker pull swr.cn-north-4.myhuaweicloud.com/ddn-k8s/ghcr.io/billchurch/webssh2:4.0.0 && docker tag  swr.cn-north-4.myhuaweicloud.com/ddn-k8s/ghcr.io/billchurch/webssh2:4.0.0  ghcr.io/billchurch/webssh2:4.0.0'

Ansible快速分发-Containerd

#ansible k8s -m shell -a 'ctr images pull swr.cn-north-4.myhuaweicloud.com/ddn-k8s/ghcr.io/billchurch/webssh2:4.0.0 && ctr images tag  swr.cn-north-4.myhuaweicloud.com/ddn-k8s/ghcr.io/billchurch/webssh2:4.0.0  ghcr.io/billchurch/webssh2:4.0.0'

镜像构建历史


# 2026-02-02 21:49:24  0.00B 设置默认要执行的命令
CMD ["node" "dist/index.js"]
                        
# 2026-02-02 21:49:24  0.00B 配置容器启动时运行的命令
ENTRYPOINT ["/sbin/tini" "--"]
                        
# 2026-02-02 21:49:24  0.00B 声明容器运行时监听的端口
EXPOSE map[2222/tcp:{}]
                        
# 2026-02-02 21:49:24  0.00B 指定运行容器时使用的用户
USER node
                        
# 2026-02-02 21:49:24  7.31KB 复制新文件或目录到容器中
COPY LICENSE README.md ./ # buildkit
                        
# 2026-02-02 21:49:24  901.36KB 复制新文件或目录到容器中
COPY /srv/webssh2/dist ./dist # buildkit
                        
# 2026-02-02 21:49:13  18.78MB 执行命令并创建新的镜像层
RUN /bin/sh -c cp -R /tmp/node_modules .   && npm prune --omit=dev --omit=optional   && npm cache clean --force # buildkit
                        
# 2026-02-02 21:49:01  21.15KB 复制新文件或目录到容器中
COPY scripts ./scripts # buildkit
                        
# 2026-02-02 21:49:01  195.58KB 复制新文件或目录到容器中
COPY package.json package-lock.json ./ # buildkit
                        
# 2026-02-02 21:49:01  0.00B 设置环境变量 NODE_ENV PORT WEBSSH2_LISTEN_IP WEBSSH2_LISTEN_PORT
ENV NODE_ENV=production PORT=2222 WEBSSH2_LISTEN_IP=0.0.0.0 WEBSSH2_LISTEN_PORT=2222
                        
# 2026-01-28 21:57:45  48.00KB 执行命令并创建新的镜像层
RUN /bin/sh -c apk add --no-cache tini # buildkit
                        
# 2026-01-28 21:57:44  0.00B 设置工作目录为/srv/webssh2
WORKDIR /srv/webssh2
                        
# 2026-01-28 11:31:02  0.00B 设置默认要执行的命令
CMD ["node"]
                        
# 2026-01-28 11:31:02  0.00B 配置容器启动时运行的命令
ENTRYPOINT ["docker-entrypoint.sh"]
                        
# 2026-01-28 11:31:02  388.00B 复制新文件或目录到容器中
COPY docker-entrypoint.sh /usr/local/bin/ # buildkit
                        
# 2026-01-28 11:31:02  5.36MB 执行命令并创建新的镜像层
RUN /bin/sh -c apk add --no-cache --virtual .build-deps-yarn curl gnupg tar   && export GNUPGHOME="$(mktemp -d)"   && for key in     6A010C5166006599AA17F08146C2130DFD2497F5   ; do     { gpg --batch --keyserver hkps://keys.openpgp.org --recv-keys "$key" && gpg --batch --fingerprint "$key"; } ||     { gpg --batch --keyserver keyserver.ubuntu.com --recv-keys "$key" && gpg --batch --fingerprint "$key"; } ;   done   && curl -fsSLO --compressed "https://yarnpkg.com/downloads/$YARN_VERSION/yarn-v$YARN_VERSION.tar.gz"   && curl -fsSLO --compressed "https://yarnpkg.com/downloads/$YARN_VERSION/yarn-v$YARN_VERSION.tar.gz.asc"   && gpg --batch --verify yarn-v$YARN_VERSION.tar.gz.asc yarn-v$YARN_VERSION.tar.gz   && gpgconf --kill all   && rm -rf "$GNUPGHOME"   && mkdir -p /opt   && tar -xzf yarn-v$YARN_VERSION.tar.gz -C /opt/   && ln -s /opt/yarn-v$YARN_VERSION/bin/yarn /usr/local/bin/yarn   && ln -s /opt/yarn-v$YARN_VERSION/bin/yarnpkg /usr/local/bin/yarnpkg   && rm yarn-v$YARN_VERSION.tar.gz.asc yarn-v$YARN_VERSION.tar.gz   && apk del .build-deps-yarn   && yarn --version   && rm -rf /tmp/* # buildkit
                        
# 2026-01-28 11:30:59  0.00B 设置环境变量 YARN_VERSION
ENV YARN_VERSION=1.22.22
                        
# 2026-01-28 11:30:59  148.36MB 执行命令并创建新的镜像层
RUN /bin/sh -c addgroup -g 1000 node     && adduser -u 1000 -G node -s /bin/sh -D node     && apk add --no-cache         libstdc++     && apk add --no-cache --virtual .build-deps         curl     && ARCH= OPENSSL_ARCH='linux*' && alpineArch="$(apk --print-arch)"       && case "${alpineArch##*-}" in         x86_64) ARCH='x64' CHECKSUM="5618c83f81bdf51ac7fdfdf5bd6e179c15294b10ae4af13c028a27d54a0bd780" OPENSSL_ARCH=linux-x86_64;;         x86) OPENSSL_ARCH=linux-elf;;         aarch64) OPENSSL_ARCH=linux-aarch64;;         arm*) OPENSSL_ARCH=linux-armv4;;         ppc64le) OPENSSL_ARCH=linux-ppc64le;;         s390x) OPENSSL_ARCH=linux-s390x;;         *) ;;       esac   && if [ -n "${CHECKSUM}" ]; then     set -eu;     curl -fsSLO --compressed "https://unofficial-builds.nodejs.org/download/release/v$NODE_VERSION/node-v$NODE_VERSION-linux-$ARCH-musl.tar.xz";     echo "$CHECKSUM  node-v$NODE_VERSION-linux-$ARCH-musl.tar.xz" | sha256sum -c -       && tar -xJf "node-v$NODE_VERSION-linux-$ARCH-musl.tar.xz" -C /usr/local --strip-components=1 --no-same-owner       && ln -s /usr/local/bin/node /usr/local/bin/nodejs;   else     echo "Building from source"     && apk add --no-cache --virtual .build-deps-full         binutils-gold         g++         gcc         gnupg         libgcc         linux-headers         make         python3         py-setuptools     && export GNUPGHOME="$(mktemp -d)"     && for key in       5BE8A3F6C8A5C01D106C0AD820B1A390B168D356       DD792F5973C6DE52C432CBDAC77ABFA00DDBF2B7       CC68F5A3106FF448322E48ED27F5E38D5B0A215F       8FCCA13FEF1D0C2E91008E09770F7A9A5AE15600       890C08DB8579162FEE0DF9DB8BEAB4DFCF555EF4       C82FA3AE1CBEDC6BE46B9360C43CEC45C17AB93C       108F52B48DB57BB0CC439B2997B01419BD92F80A       A363A499291CBBC940DD62E41F10027AF002F8B0     ; do       { gpg --batch --keyserver hkps://keys.openpgp.org --recv-keys "$key" && gpg --batch --fingerprint "$key"; } ||       { gpg --batch --keyserver keyserver.ubuntu.com --recv-keys "$key" && gpg --batch --fingerprint "$key"; } ;     done     && curl -fsSLO --compressed "https://nodejs.org/dist/v$NODE_VERSION/node-v$NODE_VERSION.tar.xz"     && curl -fsSLO --compressed "https://nodejs.org/dist/v$NODE_VERSION/SHASUMS256.txt.asc"     && gpg --batch --decrypt --output SHASUMS256.txt SHASUMS256.txt.asc     && gpgconf --kill all     && rm -rf "$GNUPGHOME"     && grep " node-v$NODE_VERSION.tar.xz\$" SHASUMS256.txt | sha256sum -c -     && tar -xf "node-v$NODE_VERSION.tar.xz"     && cd "node-v$NODE_VERSION"     && ./configure     && make -j$(getconf _NPROCESSORS_ONLN) V=     && make install     && apk del .build-deps-full     && cd ..     && rm -Rf "node-v$NODE_VERSION"     && rm "node-v$NODE_VERSION.tar.xz" SHASUMS256.txt.asc SHASUMS256.txt;   fi   && rm -f "node-v$NODE_VERSION-linux-$ARCH-musl.tar.xz"   && find /usr/local/include/node/openssl/archs -mindepth 1 -maxdepth 1 ! -name "$OPENSSL_ARCH" -exec rm -rf {} \;   && apk del .build-deps   && node --version   && npm --version   && rm -rf /tmp/* # buildkit
                        
# 2026-01-28 11:30:59  0.00B 设置环境变量 NODE_VERSION
ENV NODE_VERSION=22.22.0
                        
# 2026-01-28 09:18:04  0.00B 设置默认要执行的命令
CMD ["/bin/sh"]
                        
# 2026-01-28 09:18:04  8.44MB 复制文件或目录到容器中
ADD alpine-minirootfs-3.23.3-x86_64.tar.gz / # buildkit
                        
                    

镜像信息

{
    "Id": "sha256:8e4ecd1997b979166c4fd2c67d78356007f67a920ed1c2ac602ca117e570935c",
    "RepoTags": [
        "ghcr.io/billchurch/webssh2:4.0.0",
        "swr.cn-north-4.myhuaweicloud.com/ddn-k8s/ghcr.io/billchurch/webssh2:4.0.0"
    ],
    "RepoDigests": [
        "ghcr.io/billchurch/webssh2@sha256:0e63ff1b90cc4b8d7a77cced6519f85f7dd23bdf3050a74c9b9f691b8894d661",
        "swr.cn-north-4.myhuaweicloud.com/ddn-k8s/ghcr.io/billchurch/webssh2@sha256:65fa72950708d9175f3e35d08cf316f0e67f681c2e5416c1975a6e08289a2c0f"
    ],
    "Parent": "",
    "Comment": "buildkit.dockerfile.v0",
    "Created": "2026-02-02T13:49:24.135363266Z",
    "Container": "",
    "ContainerConfig": null,
    "DockerVersion": "",
    "Author": "",
    "Config": {
        "Hostname": "",
        "Domainname": "",
        "User": "node",
        "AttachStdin": false,
        "AttachStdout": false,
        "AttachStderr": false,
        "ExposedPorts": {
            "2222/tcp": {}
        },
        "Tty": false,
        "OpenStdin": false,
        "StdinOnce": false,
        "Env": [
            "PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin",
            "NODE_VERSION=22.22.0",
            "YARN_VERSION=1.22.22",
            "NODE_ENV=production",
            "PORT=2222",
            "WEBSSH2_LISTEN_IP=0.0.0.0",
            "WEBSSH2_LISTEN_PORT=2222"
        ],
        "Cmd": [
            "node",
            "dist/index.js"
        ],
        "ArgsEscaped": true,
        "Image": "",
        "Volumes": null,
        "WorkingDir": "/srv/webssh2",
        "Entrypoint": [
            "/sbin/tini",
            "--"
        ],
        "OnBuild": null,
        "Labels": {
            "org.opencontainers.image.created": "2026-02-02T13:48:57.024Z",
            "org.opencontainers.image.description": "Web SSH Client using ssh2, socket.io, xterm.js, and express. webssh webssh2",
            "org.opencontainers.image.licenses": "MIT",
            "org.opencontainers.image.revision": "ccaa513dbad10015e41071236762a96b123e3aa1",
            "org.opencontainers.image.source": "https://github.com/billchurch/webssh2",
            "org.opencontainers.image.title": "webssh2",
            "org.opencontainers.image.url": "https://github.com/billchurch/webssh2",
            "org.opencontainers.image.version": "latest"
        }
    },
    "Architecture": "amd64",
    "Os": "linux",
    "Size": 182117832,
    "GraphDriver": {
        "Data": {
            "LowerDir": "/var/lib/docker/overlay2/dc8d4bcc36604ed94bd9ad607896fc71fea5c840bcd45a7137c60495dfd6c88d/diff:/var/lib/docker/overlay2/997cfa4bc84b5d5cd8084c7eccc97fc920f54310e4471dc4bb61a116aba1210b/diff:/var/lib/docker/overlay2/8c83a23a9e677f0f8b25f3bd4dbffcf1cf6475c3651077f870dcfbf8691222d0/diff:/var/lib/docker/overlay2/03575e71f9ef2173f4bb7179b7583d91f0830894ffc1228e70805740bef5d386/diff:/var/lib/docker/overlay2/201d659d97a3a1b848f3c08aa3fb31019dccebcd0c7645f28ba7e3d9bb418ac2/diff:/var/lib/docker/overlay2/084a759fe502a6a99dcf8557879c351323172c36b3870addc185cd2887e17b63/diff:/var/lib/docker/overlay2/ebe5364f536b43b9a3cf14ee1159ce7a216a0d50223b84dbdfb694bdfdf3b95f/diff:/var/lib/docker/overlay2/35e214d02d769034ab17b20f256fc69cb22ed5d3be1c97b4a8ff1bd161041abc/diff:/var/lib/docker/overlay2/b84cc4edd55e3b064dc878d16f279900e4dd6aa8f2b7cfa66216f9ee5f6ebfaf/diff:/var/lib/docker/overlay2/1fa9cf0757584b4bafa9b0c5bcdbc88c252b3d769adb555172aaaf4a2fc155ea/diff",
            "MergedDir": "/var/lib/docker/overlay2/519a7618e5d4cf016c2110f5dde9b93f0884ab57950a398815e8dc008ec3930d/merged",
            "UpperDir": "/var/lib/docker/overlay2/519a7618e5d4cf016c2110f5dde9b93f0884ab57950a398815e8dc008ec3930d/diff",
            "WorkDir": "/var/lib/docker/overlay2/519a7618e5d4cf016c2110f5dde9b93f0884ab57950a398815e8dc008ec3930d/work"
        },
        "Name": "overlay2"
    },
    "RootFS": {
        "Type": "layers",
        "Layers": [
            "sha256:989e799e634906e94dc9a5ee2ee26fc92ad260522990f26e707861a5f52bf64e",
            "sha256:73f69c6599be74f4742a84051e5f3c835cf1230fdd3378870b4496cef610952e",
            "sha256:02289bdc8da66779c084441cadeb5580c50bfe67eb37b7ccfa24854433733f47",
            "sha256:d2f2025518d6d84c30eadd293be9fa61f0ac168b0865956ccbde715b7e6142e4",
            "sha256:0e62b97d0d5a2b5ea6d7ea68bc8124bd6cca8453646f612b90fa16478d5b5d34",
            "sha256:6d4b256e4b9ed6b23de8da82b661ac69196744ad98ec63ff839a61797afaeac9",
            "sha256:560e6abc9dc4aba94bfc476b0a0013388152921b2898691df3b7a0ef0adcee22",
            "sha256:87ab5a0b38e5815e394f6d1e3ca398d827185d82e6b624a6563c193f71bd3352",
            "sha256:9e637c152a4d5fbb895a85c08f8bf54d5e43c0b7da0d70cfda394466725a32b7",
            "sha256:3b9737befffa4863406aad71f143f2069d18cb61731e03bcfee103c43e0e5691",
            "sha256:36e826be70decddcca21a4be53723bf5e2a3a07841db424fb8239131641cfea6"
        ]
    },
    "Metadata": {
        "LastTagTime": "2026-02-06T16:31:14.437737821+08:00"
    }
}

更多版本

ghcr.io/billchurch/webssh2:latest

linux/amd64 ghcr.io186.11MB2025-11-23 02:08
104

ghcr.io/billchurch/webssh2:4.0.0

linux/amd64 ghcr.io182.12MB2026-02-06 16:31
7