logo
docker.io/zzx112587/video-learner:1.0.5
linux/amd64 docker.io 知日贤 贡献
21
浏览次数
1.05GB
镜像大小
国内镜像
swr.cn-north-4.myhuaweicloud.com/ddn-k8s/docker.io/zzx112587/video-learner:1.0.5
源镜像
docker.io/zzx112587/video-learner:1.0.5
镜像ID
sha256:c861405075ef8d67b35de3314db9d9a1e4054947beb7a8bbcb784e081774b189
镜像 TAG
1.0.5
镜像大小
1.05GB
平台架构
linux/amd64
镜像源
docker.io
CMD
node server.js
启动入口
tini --
工作目录
/app
OS/平台
linux/amd64
镜像创建
2026-10-29T10:02:41.297492596Z
同步时间
2026-10-30 02:31
浏览量
21 次
贡献者
avatar 知日贤
🔌 开放端口 1
3000/tcp
⚙️ 环境变量 7
KeyValue
PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin 0
NODE_VERSION=22.23.4 1
YARN_VERSION=1.22.22 2
NODE_ENV=production 3
TZ=Etc/UTC 4
FFMPEG_PATH=/usr/bin/ffmpeg 5
FFPROBE_PATH=/usr/bin/ffprobe 6
🏷️ 镜像标签 8
KeyValue
2026-10-29T10:01:29.879Z org.opencontainers.image.created
org.opencontainers.image.description
org.opencontainers.image.licenses
fa84edc722e51517cdb7dc8ecab328334b3e8738 org.opencontainers.image.revision
https://github.com/zzx112587/my-video-game-learner org.opencontainers.image.source
my-video-game-learner org.opencontainers.image.title
https://github.com/zzx112587/my-video-game-learner org.opencontainers.image.url
1.0.5 org.opencontainers.image.version

Docker拉取命令

docker pull swr.cn-north-4.myhuaweicloud.com/ddn-k8s/docker.io/zzx112587/video-learner:1.0.5
docker tag  swr.cn-north-4.myhuaweicloud.com/ddn-k8s/docker.io/zzx112587/video-learner:1.0.5  docker.io/zzx112587/video-learner:1.0.5

Containerd拉取命令

ctr images pull swr.cn-north-4.myhuaweicloud.com/ddn-k8s/docker.io/zzx112587/video-learner:1.0.5
ctr images tag  swr.cn-north-4.myhuaweicloud.com/ddn-k8s/docker.io/zzx112587/video-learner:1.0.5  docker.io/zzx112587/video-learner:1.0.5

Shell快速替换命令

sed -i 's#zzx112587/video-learner:1.0.5#swr.cn-north-4.myhuaweicloud.com/ddn-k8s/docker.io/zzx112587/video-learner:1.0.5#' deployment.yaml

Ansible快速分发-Docker

#ansible k8s -m shell -a 'docker pull swr.cn-north-4.myhuaweicloud.com/ddn-k8s/docker.io/zzx112587/video-learner:1.0.5 && docker tag  swr.cn-north-4.myhuaweicloud.com/ddn-k8s/docker.io/zzx112587/video-learner:1.0.5  docker.io/zzx112587/video-learner:1.0.5'

Ansible快速分发-Containerd

#ansible k8s -m shell -a 'ctr images pull swr.cn-north-4.myhuaweicloud.com/ddn-k8s/docker.io/zzx112587/video-learner:1.0.5 && ctr images tag  swr.cn-north-4.myhuaweicloud.com/ddn-k8s/docker.io/zzx112587/video-learner:1.0.5  docker.io/zzx112587/video-learner:1.0.5'

镜像构建历史


# 2026-10-29 18:02:41  0.00B 设置默认要执行的命令
CMD ["node" "server.js"]
                        
# 2026-10-29 18:02:41  0.00B 配置容器启动时运行的命令
ENTRYPOINT ["tini" "--"]
                        
# 2026-10-29 18:02:41  0.00B 指定检查容器健康状态的命令
HEALTHCHECK {Test:[CMD-SHELL node -e "fetch('http://127.0.0.1:3000/api/health').then(r => process.exit(r.ok ? 0 : 1)).catch(() => process.exit(1))"] Interval:30s Timeout:5s StartPeriod:15s StartInterval:0s Retries:3}
                        
# 2026-10-29 18:02:41  0.00B 声明容器运行时监听的端口
EXPOSE [3000/tcp]
                        
# 2026-10-29 18:02:41  0.00B 指定运行容器时使用的用户
USER node
                        
# 2026-10-29 18:02:41  0.00B 执行命令并创建新的镜像层
RUN /bin/sh -c mkdir -p /app/data /app/uploads && chown -R node:node /app/data /app/uploads # buildkit
                        
# 2026-10-29 18:02:41  22.95KB 复制新文件或目录到容器中
COPY /app/drizzle ./drizzle # buildkit
                        
# 2026-10-29 18:02:41  787.47KB 复制新文件或目录到容器中
COPY /app/public ./public # buildkit
                        
# 2026-10-29 18:02:41  841.28KB 复制新文件或目录到容器中
COPY /app/.next/static ./.next/static # buildkit
                        
# 2026-10-29 18:02:40  95.02MB 复制新文件或目录到容器中
COPY /app/.next/standalone ./ # buildkit
                        
# 2026-10-29 18:02:14  650.02MB 执行命令并创建新的镜像层
RUN /bin/sh -c npm ci --omit=dev # buildkit
                        
# 2026-10-29 18:01:43  107.97KB 复制新文件或目录到容器中
COPY package.json package-lock.json ./ # buildkit
                        
# 2026-10-29 18:01:43  131.82MB 执行命令并创建新的镜像层
RUN /bin/sh -c apk add --no-cache ca-certificates ffmpeg tini tzdata     && update-ca-certificates # buildkit
                        
# 2026-10-29 18:01:43  0.00B 设置环境变量 NODE_ENV TZ FFMPEG_PATH FFPROBE_PATH
ENV NODE_ENV=production TZ=Etc/UTC FFMPEG_PATH=/usr/bin/ffmpeg FFPROBE_PATH=/usr/bin/ffprobe
                        
# 2026-10-29 18:01:36  0.00B 设置工作目录为/app
WORKDIR /app
                        
# 2026-10-22 06:58:51  0.00B 设置默认要执行的命令
CMD ["node"]
                        
# 2026-10-22 06:58:51  0.00B 配置容器启动时运行的命令
ENTRYPOINT ["docker-entrypoint.sh"]
                        
# 2026-10-22 06:58:51  388.00B 复制新文件或目录到容器中
COPY docker-entrypoint.sh /usr/local/bin/ # buildkit
                        
# 2026-10-22 06:58:51  5.37MB 执行命令并创建新的镜像层
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-10-22 06:58:47  0.00B 设置环境变量 YARN_VERSION
ENV YARN_VERSION=1.22.22
                        
# 2026-10-22 06:58:47  154.43MB 执行命令并创建新的镜像层
RUN /bin/sh -c addgroup -g 1000 node     && adduser -u 1000 -G node -s /bin/sh -D node     && apk add --no-cache         libatomic         libstdc++     && apk add --no-cache --virtual .build-deps         gnupg         curl     && ARCH= OPENSSL_ARCH='linux*' && alpineArch="$(apk --print-arch)"       && case "${alpineArch##*-}" in         x86_64) ARCH='x64' OPENSSL_ARCH=linux-x86_64;;         aarch64) OPENSSL_ARCH=linux-aarch64;;         arm*) OPENSSL_ARCH=linux-armv4;;         s390x) OPENSSL_ARCH=linux-s390x;;         *) echo "unsupported architecture"; exit 1 ;;       esac     && export GNUPGHOME="$(mktemp -d)"     && set -ex     && for key in       5BE8A3F6C8A5C01D106C0AD820B1A390B168D356       DD792F5973C6DE52C432CBDAC77ABFA00DDBF2B7       CC68F5A3106FF448322E48ED27F5E38D5B0A215F       890C08DB8579162FEE0DF9DB8BEAB4DFCF555EF4       C82FA3AE1CBEDC6BE46B9360C43CEC45C17AB93C       108F52B48DB57BB0CC439B2997B01419BD92F80A       655F3B5C1FB3FA8D1A0CA6BDE4A7D232B936D2FD       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   && if [ "$ARCH" = "x64" ]; then     curl -fsSLO --compressed "https://nodejs.org/dist/v$NODE_VERSION/node-v$NODE_VERSION-linux-$ARCH-musl.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-linux-$ARCH-musl.tar.xz\$" SHASUMS256.txt | sha256sum -c -     && tar -xJf "node-v$NODE_VERSION-linux-$ARCH-musl.tar.xz" -C /usr/local --strip-components=1 --no-same-owner     && rm "node-v$NODE_VERSION-linux-$ARCH-musl.tar.xz" SHASUMS256.txt.asc SHASUMS256.txt     && 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         libgcc         linux-headers         make         python3         py-setuptools     && 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   && 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-10-22 06:58:47  0.00B 设置环境变量 NODE_VERSION
ENV NODE_VERSION=22.23.4
                        
# 2026-10-22 06:37:22  0.00B 设置默认要执行的命令
CMD ["/bin/sh"]
                        
# 2026-10-22 06:37:22  8.43MB 复制文件或目录到容器中
ADD alpine-minirootfs-3.24.3-x86_64.tar.gz / # buildkit
                        
                    

镜像信息

{
    "Id": "sha256:c861405075ef8d67b35de3314db9d9a1e4054947beb7a8bbcb784e081774b189",
    "RepoTags": [
        "zzx112587/video-learner:1.0.5",
        "swr.cn-north-4.myhuaweicloud.com/ddn-k8s/docker.io/zzx112587/video-learner:1.0.5"
    ],
    "RepoDigests": [
        "zzx112587/video-learner@sha256:3e7e029f5d951023cc5aa2a5d5a1caea6d6b3ac7c9609f9f3d0decb78345fa32",
        "swr.cn-north-4.myhuaweicloud.com/ddn-k8s/docker.io/zzx112587/video-learner@sha256:9cd25c2747dd68508a74b2e01afb48b1c0b56c0c8a49963736e606363eaaefaa"
    ],
    "Parent": "",
    "Comment": "buildkit.dockerfile.v0",
    "Created": "2026-10-29T10:02:41.297492596Z",
    "Container": "",
    "ContainerConfig": null,
    "DockerVersion": "",
    "Author": "",
    "Config": {
        "Hostname": "",
        "Domainname": "",
        "User": "node",
        "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=22.23.4",
            "YARN_VERSION=1.22.22",
            "NODE_ENV=production",
            "TZ=Etc/UTC",
            "FFMPEG_PATH=/usr/bin/ffmpeg",
            "FFPROBE_PATH=/usr/bin/ffprobe"
        ],
        "Cmd": [
            "node",
            "server.js"
        ],
        "Healthcheck": {
            "Test": [
                "CMD-SHELL",
                "node -e \"fetch('http://127.0.0.1:3000/api/health').then(r =\u003e process.exit(r.ok ? 0 : 1)).catch(() =\u003e process.exit(1))\""
            ],
            "Interval": 30000000000,
            "Timeout": 5000000000,
            "StartPeriod": 15000000000,
            "Retries": 3
        },
        "ArgsEscaped": true,
        "Image": "",
        "Volumes": null,
        "WorkingDir": "/app",
        "Entrypoint": [
            "tini",
            "--"
        ],
        "OnBuild": null,
        "Labels": {
            "org.opencontainers.image.created": "2026-10-29T10:01:29.879Z",
            "org.opencontainers.image.description": "",
            "org.opencontainers.image.licenses": "",
            "org.opencontainers.image.revision": "fa84edc722e51517cdb7dc8ecab328334b3e8738",
            "org.opencontainers.image.source": "https://github.com/zzx112587/my-video-game-learner",
            "org.opencontainers.image.title": "my-video-game-learner",
            "org.opencontainers.image.url": "https://github.com/zzx112587/my-video-game-learner",
            "org.opencontainers.image.version": "1.0.5"
        }
    },
    "Architecture": "amd64",
    "Os": "linux",
    "Size": 1046850208,
    "GraphDriver": {
        "Data": {
            "LowerDir": "/var/lib/docker/overlay2/a3234336479e34dcbb2fb5f00e1f0a2ca4a2f51d9488cfeefbc7d0df05796931/diff:/var/lib/docker/overlay2/5892f2b14008835975f3982baa4565d74a2472a1366bdf1020d5843ab3f5073c/diff:/var/lib/docker/overlay2/802821f0fc4678f1b9041c04dda230770a699a2aa8a7fa9094fe15e992ca8e27/diff:/var/lib/docker/overlay2/e2b952ba4ecbd31b77ade40bad11d2a32e5ad4c82ca430c214029bcf6d649ef5/diff:/var/lib/docker/overlay2/82fa0a45ed276505e86eb4268f5277210bfb891b283f7a694abc0ff03bac020a/diff:/var/lib/docker/overlay2/4bb56796f1fe39972cd78fe485311e210fad39f514fcc107a45280cde9452720/diff:/var/lib/docker/overlay2/76825a4d21386e463aa3773a3e1347e906b283636e5c9ea5de0e3f442090dd9a/diff:/var/lib/docker/overlay2/a37409b61f77cd16c04affe7d1fb9fcd6e9f728d4ee49561b1eab570599aa7c0/diff:/var/lib/docker/overlay2/60b519334065b468879ae029714817010ca81f62d689aadea8d8f4eb1a9a6fe5/diff:/var/lib/docker/overlay2/be091b05af559757f287f8aa6249ca69bf1c6953e3252606a0f044fc4663d70d/diff:/var/lib/docker/overlay2/47cd102fde288b4530b83dc106d38793d2fd4fd43e9ce2aaea165f24438899db/diff:/var/lib/docker/overlay2/d5164844b0320141b3dea060c03c7289317582de4aa76c273d105b1ad536f3ef/diff",
            "MergedDir": "/var/lib/docker/overlay2/20a2ea55bfc31b757c4dea0ac35e1cc318b26fdeff1a0fda555b58e7f0c0cc12/merged",
            "UpperDir": "/var/lib/docker/overlay2/20a2ea55bfc31b757c4dea0ac35e1cc318b26fdeff1a0fda555b58e7f0c0cc12/diff",
            "WorkDir": "/var/lib/docker/overlay2/20a2ea55bfc31b757c4dea0ac35e1cc318b26fdeff1a0fda555b58e7f0c0cc12/work"
        },
        "Name": "overlay2"
    },
    "RootFS": {
        "Type": "layers",
        "Layers": [
            "sha256:75c137aedfb2760f88629236cb7b797630aed0c3d91d626d1d1bb694878fc2ba",
            "sha256:30ad2d1597a9c97acebab3677fb203383cecf282375bb030d114b01f98a1adb4",
            "sha256:7f78e22f72fbece43b0a1236ad7b98579faaa411ce7445c98d8f6bfc7f06b1bc",
            "sha256:92ef3b67b69bfad75b1f2a2df8279578ae15f7282b28f5d29bb4a85709285ecd",
            "sha256:3de2cbcda9b8bd4e5d5b63416c4602e777cd9baf0545ea71d6bd4e9db0e12a42",
            "sha256:e4a476e6c37a95081605a48c5bcd3ca02540b045176b4cb015253f4685f3f9b4",
            "sha256:3eafc87568ff28af56895c64807b9306021ab209d9b8d440a8d958d8f93a1919",
            "sha256:06cb4fcd346065b1d1ca55577c3538b8970245790ded0825136bece782ffb5d7",
            "sha256:49733cb178d438bb1424fe1351050654029dc5971e7dcb5d91ba8a26822644fe",
            "sha256:b041ea1d3c08c155673fdbf3a2cd0ada22482ac634faf39ba178c12b0a6486cd",
            "sha256:b8fb369349dd1789a35a726732492955ecc39c1d285a581ca99351018a2cfecb",
            "sha256:ead2a223fcf8aa2eb198b0f7e453de32ec4900d373061e23ad69691105f08df9",
            "sha256:13d42998de29ac8995457a572fccf39e07c3de5ea7a45220623a54648435fd59"
        ]
    },
    "Metadata": {
        "LastTagTime": "2026-10-30T02:31:23.528938291+08:00"
    }
}

更多版本

docker.io/zzx112587/video-learner:1.0.4

linux/amd64 docker.io1.05GB2026-10-29 15:09
19

docker.io/zzx112587/video-learner:1.0.5

linux/amd64 docker.io1.05GB2026-10-30 02:31
20
检测到您正在使用广告拦截插件,本站为公益站点,依赖广告维持运转 🙏 查看如何关闭 ×