ℹ️
注意:这是一个 latest 标签镜像

latest 并不代表最新版本,本站同步时间存在延迟,无法保证此镜像与上游最新版本一致
生产环境建议使用明确的版本号(如 v1.2.3),避免因版本不一致导致问题。 了解更多 →

logo
docker.io/smp46/pingvin-share-x:latest
linux/amd64 docker.io

Pingvin Share X是一款自托管的文件与截图共享工具,支持文件上传、截图分享、自定义链接、设置过期时间等功能,可用于搭建个人或团队的私有文件共享服务,方便快速分享各类内容。

14
浏览次数
580.60MB
镜像大小
国内镜像
swr.cn-north-4.myhuaweicloud.com/ddn-k8s/docker.io/smp46/pingvin-share-x:latest
源镜像
docker.io/smp46/pingvin-share-x:latest
镜像ID
sha256:1cab109998d958220009114a8a0255c35d40c545e9baab32c37e10a157ddf92f
镜像 TAG
latest
镜像大小
580.60MB
平台架构
linux/amd64
镜像源
docker.io
CMD
sh ./scripts/docker/entrypoint.sh
启动入口
sh ./scripts/docker/create-user.sh
工作目录
/opt/app
OS/平台
linux/amd64
镜像创建
2026-07-23T10:18:41.376488301Z
同步时间
2026-07-29 16:46
浏览量
14 次
贡献者
🔌 开放端口 1
3000/tcp
⚙️ 环境变量 4
KeyValue
PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin 0
NODE_VERSION=24.18.0 1
YARN_VERSION=1.22.22 2
NODE_ENV=docker 3
🏷️ 镜像标签 8
KeyValue
2026-07-23T10:15:11.738Z org.opencontainers.image.created
Pingvin Share X is a secure and easy self-hosted file sharing platform. org.opencontainers.image.description
BSD-2-Clause org.opencontainers.image.licenses
68ebf191fe1362592ffd5517e662f087e36c10b2 org.opencontainers.image.revision
https://github.com/smp46/pingvin-share-x org.opencontainers.image.source
pingvin-share-x org.opencontainers.image.title
https://github.com/smp46/pingvin-share-x org.opencontainers.image.url
v1.21.2 org.opencontainers.image.version
🛡️ 镜像安全扫描
alpine 3.24.1 Trivy 2026-07-29 16:46 查看完整报告
2
低危 LOW
11
中危 MEDIUM
11
高危 HIGH
0
严重 CRITICAL
受影响目标 (2)
docker.io/smp46/pingvin-share-x:latest (alpine 3.24.1) alpine Node.js node-pkg

Docker拉取命令

docker pull swr.cn-north-4.myhuaweicloud.com/ddn-k8s/docker.io/smp46/pingvin-share-x:latest
docker tag  swr.cn-north-4.myhuaweicloud.com/ddn-k8s/docker.io/smp46/pingvin-share-x:latest  docker.io/smp46/pingvin-share-x:latest

Containerd拉取命令

ctr images pull swr.cn-north-4.myhuaweicloud.com/ddn-k8s/docker.io/smp46/pingvin-share-x:latest
ctr images tag  swr.cn-north-4.myhuaweicloud.com/ddn-k8s/docker.io/smp46/pingvin-share-x:latest  docker.io/smp46/pingvin-share-x:latest

Shell快速替换命令

sed -i 's#smp46/pingvin-share-x:latest#swr.cn-north-4.myhuaweicloud.com/ddn-k8s/docker.io/smp46/pingvin-share-x:latest#' deployment.yaml

Ansible快速分发-Docker

#ansible k8s -m shell -a 'docker pull swr.cn-north-4.myhuaweicloud.com/ddn-k8s/docker.io/smp46/pingvin-share-x:latest && docker tag  swr.cn-north-4.myhuaweicloud.com/ddn-k8s/docker.io/smp46/pingvin-share-x:latest  docker.io/smp46/pingvin-share-x:latest'

Ansible快速分发-Containerd

#ansible k8s -m shell -a 'ctr images pull swr.cn-north-4.myhuaweicloud.com/ddn-k8s/docker.io/smp46/pingvin-share-x:latest && ctr images tag  swr.cn-north-4.myhuaweicloud.com/ddn-k8s/docker.io/smp46/pingvin-share-x:latest  docker.io/smp46/pingvin-share-x:latest'

镜像构建历史


# 2026-07-23 18:18:41  0.00B 设置默认要执行的命令
CMD ["sh" "./scripts/docker/entrypoint.sh"]
                        
# 2026-07-23 18:18:41  0.00B 配置容器启动时运行的命令
ENTRYPOINT ["sh" "./scripts/docker/create-user.sh"]
                        
# 2026-07-23 18:18:41  0.00B 指定检查容器健康状态的命令
HEALTHCHECK {Test:[CMD-SHELL /bin/sh -c '(if [[ "$CADDY_DISABLED" = "true" ]]; then curl -fs http://localhost:${BACKEND_PORT:-8080}/api/health; else curl -fs http://localhost:3000/api/health; fi) || exit 1'] Interval:10s Timeout:3s StartPeriod:1m30s StartInterval:0s Retries:0}
                        
# 2026-07-23 18:18:41  0.00B 声明容器运行时监听的端口
EXPOSE [3000/tcp]
                        
# 2026-07-23 18:18:41  1.92KB 复制新文件或目录到容器中
COPY ./scripts/docker ./scripts/docker # buildkit
                        
# 2026-07-23 18:18:41  433.00B 复制新文件或目录到容器中
COPY ./reverse-proxy /opt/app/reverse-proxy # buildkit
                        
# 2026-07-23 18:18:41  0.00B 设置工作目录为/opt/app
WORKDIR /opt/app
                        
# 2026-07-23 18:18:41  581.00B 复制新文件或目录到容器中
COPY /opt/app/tsconfig.json ./ # buildkit
                        
# 2026-07-23 18:18:41  3.17KB 复制新文件或目录到容器中
COPY /opt/app/package.json ./ # buildkit
                        
# 2026-07-23 18:18:41  52.41KB 复制新文件或目录到容器中
COPY /opt/app/prisma ./prisma # buildkit
                        
# 2026-07-23 18:18:41  1.21MB 复制新文件或目录到容器中
COPY /opt/app/dist ./dist # buildkit
                        
# 2026-07-23 18:18:41  0.00B 执行命令并创建新的镜像层
RUN /bin/sh -c rm -rf ./node_modules/typescript            ./node_modules/esbuild            ./node_modules/@esbuild            ./node_modules/.bin/tsc            ./node_modules/.bin/esbuild # buildkit
                        
# 2026-07-23 18:18:40  262.79MB 复制新文件或目录到容器中
COPY /opt/app/node_modules ./node_modules # buildkit
                        
# 2026-07-23 18:18:37  0.00B 设置工作目录为/opt/app/backend
WORKDIR /opt/app/backend
                        
# 2026-07-23 18:18:37  389.49KB 复制新文件或目录到容器中
COPY /opt/app/public/img /tmp/img # buildkit
                        
# 2026-07-23 18:18:37  4.61MB 复制新文件或目录到容器中
COPY /opt/app/.next/static ./.next/static # buildkit
                        
# 2026-07-23 18:18:37  79.56MB 复制新文件或目录到容器中
COPY /opt/app/.next/standalone ./ # buildkit
                        
# 2026-07-23 18:18:36  414.16KB 复制新文件或目录到容器中
COPY /opt/app/public ./public # buildkit
                        
# 2026-07-23 18:15:33  0.00B 设置工作目录为/opt/app/frontend
WORKDIR /opt/app/frontend
                        
# 2026-07-23 18:15:33  67.12MB 执行命令并创建新的镜像层
RUN /bin/sh -c apk update --no-cache     && apk upgrade --no-cache     && apk add --no-cache curl caddy su-exec openssl     && rm -rf /usr/local/lib/node_modules/npm /usr/local/bin/npm /usr/local/bin/npx # buildkit
                        
# 2026-07-23 18:15:28  3.02KB 执行命令并创建新的镜像层
RUN /bin/sh -c deluser --remove-home node # buildkit
                        
# 2026-07-23 18:15:28  0.00B 设置环境变量 NODE_ENV
ENV NODE_ENV=docker
                        
# 2026-06-25 02:11:42  0.00B 设置默认要执行的命令
CMD ["node"]
                        
# 2026-06-25 02:11:42  0.00B 配置容器启动时运行的命令
ENTRYPOINT ["docker-entrypoint.sh"]
                        
# 2026-06-25 02:11:42  388.00B 复制新文件或目录到容器中
COPY docker-entrypoint.sh /usr/local/bin/ # buildkit
                        
# 2026-06-25 02:11:42  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-06-25 02:11:38  0.00B 设置环境变量 YARN_VERSION
ENV YARN_VERSION=1.22.22
                        
# 2026-06-25 02:11:38  150.67MB 执行命令并创建新的镜像层
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="b818a0c3857272329cad4d575abf49e5060215858c9c3015437366f8adc7b85d" 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-06-25 02:11:38  0.00B 设置环境变量 NODE_VERSION
ENV NODE_VERSION=24.18.0
                        
# 2026-06-16 08:01:29  0.00B 设置默认要执行的命令
CMD ["/bin/sh"]
                        
# 2026-06-16 08:01:29  8.42MB 复制文件或目录到容器中
ADD alpine-minirootfs-3.24.1-x86_64.tar.gz / # buildkit
                        
                    

镜像信息

{
    "Id": "sha256:1cab109998d958220009114a8a0255c35d40c545e9baab32c37e10a157ddf92f",
    "RepoTags": [
        "smp46/pingvin-share-x:latest",
        "swr.cn-north-4.myhuaweicloud.com/ddn-k8s/docker.io/smp46/pingvin-share-x:latest"
    ],
    "RepoDigests": [
        "smp46/pingvin-share-x@sha256:c881b09f0f2b01120cd50dc52bbf3d9ab4def8c1cbef9aab3f6df159644ae24e",
        "swr.cn-north-4.myhuaweicloud.com/ddn-k8s/docker.io/smp46/pingvin-share-x@sha256:5b27bf98bf3c028160713f14986d07563f04dee382921a31c7f84d8669e47b9d"
    ],
    "Parent": "",
    "Comment": "buildkit.dockerfile.v0",
    "Created": "2026-07-23T10:18:41.376488301Z",
    "Container": "",
    "ContainerConfig": null,
    "DockerVersion": "",
    "Author": "",
    "Config": {
        "Hostname": "",
        "Domainname": "",
        "User": "",
        "AttachStdin": false,
        "AttachStdout": false,
        "AttachStderr": false,
        "ExposedPorts": {
            "3000/tcp": {}
        },
        "Tty": false,
        "OpenStdin": false,
        "StdinOnce": false,
        "Env": [
            "PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin",
            "NODE_VERSION=24.18.0",
            "YARN_VERSION=1.22.22",
            "NODE_ENV=docker"
        ],
        "Cmd": [
            "sh",
            "./scripts/docker/entrypoint.sh"
        ],
        "Healthcheck": {
            "Test": [
                "CMD-SHELL",
                "/bin/sh -c '(if [[ \"$CADDY_DISABLED\" = \"true\" ]]; then curl -fs http://localhost:${BACKEND_PORT:-8080}/api/health; else curl -fs http://localhost:3000/api/health; fi) || exit 1'"
            ],
            "Interval": 10000000000,
            "Timeout": 3000000000,
            "StartPeriod": 90000000000
        },
        "ArgsEscaped": true,
        "Image": "",
        "Volumes": null,
        "WorkingDir": "/opt/app",
        "Entrypoint": [
            "sh",
            "./scripts/docker/create-user.sh"
        ],
        "OnBuild": null,
        "Labels": {
            "org.opencontainers.image.created": "2026-07-23T10:15:11.738Z",
            "org.opencontainers.image.description": "Pingvin Share X is a secure and easy self-hosted file sharing platform.",
            "org.opencontainers.image.licenses": "BSD-2-Clause",
            "org.opencontainers.image.revision": "68ebf191fe1362592ffd5517e662f087e36c10b2",
            "org.opencontainers.image.source": "https://github.com/smp46/pingvin-share-x",
            "org.opencontainers.image.title": "pingvin-share-x",
            "org.opencontainers.image.url": "https://github.com/smp46/pingvin-share-x",
            "org.opencontainers.image.version": "v1.21.2"
        }
    },
    "Architecture": "amd64",
    "Os": "linux",
    "Size": 580598110,
    "GraphDriver": {
        "Data": {
            "LowerDir": "/var/lib/docker/overlay2/17914be35a9e3fd7b5be0cfb23e22460ef4b87942499cacf34aa587729618825/diff:/var/lib/docker/overlay2/48fa4ba1aef942a1b9ccf47c9f06d5fd954f6608114c2bbfca18e806cc904533/diff:/var/lib/docker/overlay2/b9dccf67a3cae26671ed0b8d7611a910c98a00300bfd8709b042ba46e569d223/diff:/var/lib/docker/overlay2/436bb7aff71c735eb9cb0d7ac0ab387d36e5529c9ec581abb24b1eb870e2d402/diff:/var/lib/docker/overlay2/37021e4642f9cd457a785c52f01ed94ba795c7e0f0e1c9caf6949ce6e489b02d/diff:/var/lib/docker/overlay2/93966829597f5ca1ea9ad42793ed2aae3e3a72792bad1989004364184a3b2427/diff:/var/lib/docker/overlay2/e56ea22a0cfe319356d91dcb573886109e6d293fde698846af78eecb1e060ac0/diff:/var/lib/docker/overlay2/4bea16dcb4e028432e528b90a4e0b41f68016f9e5382bb26f6f7cbb9be5e90c4/diff:/var/lib/docker/overlay2/08ad23f17b571f5ed8bd492817e0b72b0d8d03f2f7af5b4e1eb133c13d29ce31/diff:/var/lib/docker/overlay2/3ead084b56ee8d02c332656d2ba4ef3563ac1b9503a4cfb88b92e243fd75b335/diff:/var/lib/docker/overlay2/651dd19fb05fe54a4bf7a50eeea654546ea60ba9884f0942921533c25377c2ba/diff:/var/lib/docker/overlay2/5740a62108d1a9b6843e31150aed34068eef1a6a601a53fb092de28ff50e2469/diff:/var/lib/docker/overlay2/b08a1f7fdd3045bc79dce405cb934a28e0406b66801bd520ba96596121d4597b/diff:/var/lib/docker/overlay2/4030fe402220540a0f184d43e0f2e462a35bd7d3b363c3bd5022ac0227cef032/diff:/var/lib/docker/overlay2/883013f64b1850b556e92d1e24e83cd6452e0e3d1cb487c1d19ae4b18997c434/diff:/var/lib/docker/overlay2/a52833219cac92819075937cb1c3f3fde9d19df7e4e1ccbdfc21c4e0aeea3f9e/diff:/var/lib/docker/overlay2/07235cb11562ce5ec9a5201f15ea742e609e808980755f08d719e87671da1cd9/diff:/var/lib/docker/overlay2/a5f88213b214ff49225f110f8004e96f023633ac2b2f7e7376404a33986db465/diff:/var/lib/docker/overlay2/f8a3a4a148af7ae9395a0f4c9af3e08bbbe8c38f5daf24469f01b1c048b8de82/diff:/var/lib/docker/overlay2/d51bd9f442769618005c9be653661c047116bf4ebe32b04db2ad4ca7bebb792d/diff",
            "MergedDir": "/var/lib/docker/overlay2/8e887aca34fa6570e2c19ddbe42148c1fd29416a8eeee2bfaaf48093ccd40624/merged",
            "UpperDir": "/var/lib/docker/overlay2/8e887aca34fa6570e2c19ddbe42148c1fd29416a8eeee2bfaaf48093ccd40624/diff",
            "WorkDir": "/var/lib/docker/overlay2/8e887aca34fa6570e2c19ddbe42148c1fd29416a8eeee2bfaaf48093ccd40624/work"
        },
        "Name": "overlay2"
    },
    "RootFS": {
        "Type": "layers",
        "Layers": [
            "sha256:34884abbe92863fce933ed7c39c0e045631af0ed86d5cc0dfbdf9fdca426ce3c",
            "sha256:0ba8902ff50f7fee1d64f2ed6d666e61a9fde25a6d288e667ac6690dd864f97b",
            "sha256:b0d4b0de83068d512460168e1ee13fe81f3ba6abd4c011aa6415c8013c110e83",
            "sha256:01028eae69241625b1dc642c51feaf4b361a9d9f0521b2714d5caea3e0a626d2",
            "sha256:6d1a2fc56cf66a2f1c9bd55b9fa4df167d9d78b9fbebca7b3755ee84db9dfd9d",
            "sha256:cc7f1647c2c7e5af3e1435b0eb8c57852f09c239efe79ba3eb1c62d6dcc06ce6",
            "sha256:040476bb79e7865b8c0d80c536ca83b024c4ddf91fe9e30466fb0959a7b3148a",
            "sha256:6cc682f026dbcd059c287f51927abfd9bb0f25edf7d89357f66c955e8f9e10fe",
            "sha256:87e41b340f808187ec052b838e1e8ad63c484570e7a2b183acb6268a8f8bafa7",
            "sha256:b1cca8fa499e69706779e52c7d750269645c6bfe48beb32fab4f0dff1be6f431",
            "sha256:ac3aaac436d4984d77ae8d4beb847aa7bbd1a3e9ee75172787ba7c677ade0a42",
            "sha256:eff035895ed89b358c1ef30003c119db13358f09ce8376b31326b4e9b1b5b191",
            "sha256:a472d138bc0d4d3df7879545e60a2dfca5359cd3cce11ca6b4ffdf453f55e9b4",
            "sha256:8cc15402ff524a0608e5927c48b0b0d0f6690843b9209b385f7757331521c1ab",
            "sha256:fa15ddb03043dd915ae13b423a0fa14372401a9f3c3787954b1bb9d06f1929ba",
            "sha256:49b32cf28809b4ee6d28387766b79e80d2cf26e472cf40f086b6cfa1e5994806",
            "sha256:501f18a2f7270cbfb627e9d0b51e167ca216838226f5dac5ce2160ad26a31174",
            "sha256:d089f10839d8b9efb0131cc87a4ed63ebcf846ec4fed665409d026d281c0dabf",
            "sha256:5f70bf18a086007016e948b04aed3b82103a36bea41755b6cddfaf10ace3c6ef",
            "sha256:d70a439320cfba950ec91c0178b17caf6b63b5aff4051ea8d5dfab650de1d04c",
            "sha256:7da1f325b228f04dd5d818e4888359db29f7c843912b826ae07326d78c675b80"
        ]
    },
    "Metadata": {
        "LastTagTime": "2026-07-29T16:46:22.396419963+08:00"
    }
}

更多版本

docker.io/smp46/pingvin-share-x:latest

linux/amd64 docker.io580.60MB2026-07-29 16:46
13
检测到您正在使用广告拦截插件,本站为公益站点,依赖广告维持运转 🙏 查看如何关闭 ×