ghcr.io/danny-avila/librechat-dev-api:9dda857a59b5591bc8e1c480049a5036baec5bfd linux/amd64

ghcr.io/danny-avila/librechat-dev-api:9dda857a59b5591bc8e1c480049a5036baec5bfd - 国内下载镜像源 浏览次数:8
源镜像 ghcr.io/danny-avila/librechat-dev-api:9dda857a59b5591bc8e1c480049a5036baec5bfd
国内镜像 swr.cn-north-4.myhuaweicloud.com/ddn-k8s/ghcr.io/danny-avila/librechat-dev-api:9dda857a59b5591bc8e1c480049a5036baec5bfd
镜像ID sha256:6bab6060c93a3df7b0c3842e6e4db9d2d6fb2de876dbd97923b9890bfb23af39
镜像TAG 9dda857a59b5591bc8e1c480049a5036baec5bfd
大小 1.16GB
镜像源 ghcr.io
CMD node server/index.js
启动入口 docker-entrypoint.sh
工作目录 /app/api
OS/平台 linux/amd64
浏览量 8 次
贡献者
镜像创建 2025-12-18T19:22:06.065039836Z
同步时间 2025-12-19 16:40
更新时间 2025-12-19 17:46
开放端口
3080/tcp
环境变量
PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin NODE_VERSION=20.19.6 YARN_VERSION=1.22.22 LD_PRELOAD=/usr/lib/libjemalloc.so.2 HOST=0.0.0.0

Docker拉取命令

docker pull swr.cn-north-4.myhuaweicloud.com/ddn-k8s/ghcr.io/danny-avila/librechat-dev-api:9dda857a59b5591bc8e1c480049a5036baec5bfd
docker tag  swr.cn-north-4.myhuaweicloud.com/ddn-k8s/ghcr.io/danny-avila/librechat-dev-api:9dda857a59b5591bc8e1c480049a5036baec5bfd  ghcr.io/danny-avila/librechat-dev-api:9dda857a59b5591bc8e1c480049a5036baec5bfd

Containerd拉取命令

ctr images pull swr.cn-north-4.myhuaweicloud.com/ddn-k8s/ghcr.io/danny-avila/librechat-dev-api:9dda857a59b5591bc8e1c480049a5036baec5bfd
ctr images tag  swr.cn-north-4.myhuaweicloud.com/ddn-k8s/ghcr.io/danny-avila/librechat-dev-api:9dda857a59b5591bc8e1c480049a5036baec5bfd  ghcr.io/danny-avila/librechat-dev-api:9dda857a59b5591bc8e1c480049a5036baec5bfd

Shell快速替换命令

sed -i 's#ghcr.io/danny-avila/librechat-dev-api:9dda857a59b5591bc8e1c480049a5036baec5bfd#swr.cn-north-4.myhuaweicloud.com/ddn-k8s/ghcr.io/danny-avila/librechat-dev-api:9dda857a59b5591bc8e1c480049a5036baec5bfd#' deployment.yaml

Ansible快速分发-Docker

#ansible k8s -m shell -a 'docker pull swr.cn-north-4.myhuaweicloud.com/ddn-k8s/ghcr.io/danny-avila/librechat-dev-api:9dda857a59b5591bc8e1c480049a5036baec5bfd && docker tag  swr.cn-north-4.myhuaweicloud.com/ddn-k8s/ghcr.io/danny-avila/librechat-dev-api:9dda857a59b5591bc8e1c480049a5036baec5bfd  ghcr.io/danny-avila/librechat-dev-api:9dda857a59b5591bc8e1c480049a5036baec5bfd'

Ansible快速分发-Containerd

#ansible k8s -m shell -a 'ctr images pull swr.cn-north-4.myhuaweicloud.com/ddn-k8s/ghcr.io/danny-avila/librechat-dev-api:9dda857a59b5591bc8e1c480049a5036baec5bfd && ctr images tag  swr.cn-north-4.myhuaweicloud.com/ddn-k8s/ghcr.io/danny-avila/librechat-dev-api:9dda857a59b5591bc8e1c480049a5036baec5bfd  ghcr.io/danny-avila/librechat-dev-api:9dda857a59b5591bc8e1c480049a5036baec5bfd'

镜像构建历史


# 2025-12-19 03:22:06  0.00B 设置默认要执行的命令
CMD ["node" "server/index.js"]
                        
# 2025-12-19 03:22:06  0.00B 设置环境变量 HOST
ENV HOST=0.0.0.0
                        
# 2025-12-19 03:22:06  0.00B 声明容器运行时监听的端口
EXPOSE [3080/tcp]
                        
# 2025-12-19 03:22:06  0.00B 设置工作目录为/app/api
WORKDIR /app/api
                        
# 2025-12-19 03:22:06  18.87MB 复制新文件或目录到容器中
COPY /app/client/dist ./client/dist # buildkit
                        
# 2025-12-19 03:20:33  6.40MB 复制新文件或目录到容器中
COPY /app/packages/api/dist ./packages/api/dist # buildkit
                        
# 2025-12-19 03:19:45  1.14MB 复制新文件或目录到容器中
COPY /app/packages/data-schemas/dist ./packages/data-schemas/dist # buildkit
                        
# 2025-12-19 03:19:19  3.58MB 复制新文件或目录到容器中
COPY /app/packages/data-provider/dist ./packages/data-provider/dist # buildkit
                        
# 2025-12-19 03:17:57  92.74KB 复制新文件或目录到容器中
COPY config ./config # buildkit
                        
# 2025-12-19 03:17:57  3.29MB 复制新文件或目录到容器中
COPY api ./api # buildkit
                        
# 2025-12-19 03:17:54  941.27MB 执行命令并创建新的镜像层
RUN /bin/sh -c npm ci --omit=dev # buildkit
                        
# 2025-12-19 03:16:39  0.00B 设置工作目录为/app
WORKDIR /app
                        
# 2025-12-19 03:16:39  0.00B 执行命令并创建新的镜像层
RUN /bin/sh -c uv --version # buildkit
                        
# 2025-12-19 03:16:39  39.15MB 复制新文件或目录到容器中
COPY /uv /uvx /bin/ # buildkit
                        
# 2025-12-19 03:16:39  3.54KB 复制新文件或目录到容器中
COPY api/package*.json ./api/ # buildkit
                        
# 2025-12-19 03:16:39  5.56KB 复制新文件或目录到容器中
COPY client/package*.json ./client/ # buildkit
                        
# 2025-12-19 03:16:39  3.90KB 复制新文件或目录到容器中
COPY packages/client/package*.json ./packages/client/ # buildkit
                        
# 2025-12-19 03:16:39  2.26KB 复制新文件或目录到容器中
COPY packages/data-schemas/package*.json ./packages/data-schemas/ # buildkit
                        
# 2025-12-19 03:16:39  4.59KB 复制新文件或目录到容器中
COPY packages/api/package*.json ./packages/api/ # buildkit
                        
# 2025-12-19 03:16:39  2.35KB 复制新文件或目录到容器中
COPY packages/data-provider/package*.json ./packages/data-provider/ # buildkit
                        
# 2025-12-19 03:16:39  1.98MB 复制新文件或目录到容器中
COPY package*.json ./ # buildkit
                        
# 2025-12-19 03:16:39  2.41KB 执行命令并创建新的镜像层
RUN /bin/sh -c npm config set fetch-retry-maxtimeout 600000 &&     npm config set fetch-retries 5 &&     npm config set fetch-retry-mintimeout 15000 # buildkit
                        
# 2025-12-19 03:16:39  5.44MB 执行命令并创建新的镜像层
RUN /bin/sh -c apk --no-cache add curl # buildkit
                        
# 2025-12-19 03:16:38  0.00B 设置工作目录为/app
WORKDIR /app
                        
# 2025-12-19 03:16:38  0.00B 设置环境变量 LD_PRELOAD
ENV LD_PRELOAD=/usr/lib/libjemalloc.so.2
                        
# 2025-12-19 03:16:38  611.65KB 执行命令并创建新的镜像层
RUN /bin/sh -c apk add --no-cache jemalloc # buildkit
                        
# 2025-12-18 08:39:45  0.00B 设置默认要执行的命令
CMD ["node"]
                        
# 2025-12-18 08:39:45  0.00B 配置容器启动时运行的命令
ENTRYPOINT ["docker-entrypoint.sh"]
                        
# 2025-12-18 08:39:45  388.00B 复制新文件或目录到容器中
COPY docker-entrypoint.sh /usr/local/bin/ # buildkit
                        
# 2025-12-18 08:39:45  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
                        
# 2025-12-18 08:39:42  0.00B 设置环境变量 YARN_VERSION
ENV YARN_VERSION=1.22.22
                        
# 2025-12-18 08:39:42  120.81MB 执行命令并创建新的镜像层
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="a371d92fafee1b20ede35c3df747ca1c8b25fcb2e14d3a4c36b41166faae707f" 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
                        
# 2025-12-18 08:39:42  0.00B 设置环境变量 NODE_VERSION
ENV NODE_VERSION=20.19.6
                        
# 2025-12-18 08:12:29  0.00B 设置默认要执行的命令
CMD ["/bin/sh"]
                        
# 2025-12-18 08:12:29  8.44MB 复制文件或目录到容器中
ADD alpine-minirootfs-3.23.2-x86_64.tar.gz / # buildkit
                        
                    

镜像信息

{
    "Id": "sha256:6bab6060c93a3df7b0c3842e6e4db9d2d6fb2de876dbd97923b9890bfb23af39",
    "RepoTags": [
        "ghcr.io/danny-avila/librechat-dev-api:9dda857a59b5591bc8e1c480049a5036baec5bfd",
        "swr.cn-north-4.myhuaweicloud.com/ddn-k8s/ghcr.io/danny-avila/librechat-dev-api:9dda857a59b5591bc8e1c480049a5036baec5bfd"
    ],
    "RepoDigests": [
        "ghcr.io/danny-avila/librechat-dev-api@sha256:1c88617d83014f8c0a54f281c57593b7a3d195a47eb705b59498a20e33b2db86",
        "swr.cn-north-4.myhuaweicloud.com/ddn-k8s/ghcr.io/danny-avila/librechat-dev-api@sha256:0f123cd8372cdda8530e19fef3917cc5bc349eed0e65714d4be7fa84d37ea2b9"
    ],
    "Parent": "",
    "Comment": "buildkit.dockerfile.v0",
    "Created": "2025-12-18T19:22:06.065039836Z",
    "Container": "",
    "ContainerConfig": null,
    "DockerVersion": "",
    "Author": "",
    "Config": {
        "Hostname": "",
        "Domainname": "",
        "User": "",
        "AttachStdin": false,
        "AttachStdout": false,
        "AttachStderr": false,
        "ExposedPorts": {
            "3080/tcp": {}
        },
        "Tty": false,
        "OpenStdin": false,
        "StdinOnce": false,
        "Env": [
            "PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin",
            "NODE_VERSION=20.19.6",
            "YARN_VERSION=1.22.22",
            "LD_PRELOAD=/usr/lib/libjemalloc.so.2",
            "HOST=0.0.0.0"
        ],
        "Cmd": [
            "node",
            "server/index.js"
        ],
        "ArgsEscaped": true,
        "Image": "",
        "Volumes": null,
        "WorkingDir": "/app/api",
        "Entrypoint": [
            "docker-entrypoint.sh"
        ],
        "OnBuild": null,
        "Labels": null
    },
    "Architecture": "amd64",
    "Os": "linux",
    "Size": 1156467471,
    "GraphDriver": {
        "Data": {
            "LowerDir": "/var/lib/docker/overlay2/a509cca5405c4dec139d373bdbba70baaf06ea5c63107fc96deb5afa41e47c8f/diff:/var/lib/docker/overlay2/069d1caf6631b238dd6676b49f3d0aa09f4189884e394abccd62ad800d8d1abb/diff:/var/lib/docker/overlay2/58639c8e31058cf1a69b758d31880a0d9d4997c9fdcbc5d944f1e9d9ab2bef9b/diff:/var/lib/docker/overlay2/6c67db646682a14c804577b3151886dcb004fbf147024f9f3863566626d00e38/diff:/var/lib/docker/overlay2/d4c7964a2b4fe94c4c3edf5b5139ccb80501a9e76b191096a865e0eb6b0a7f92/diff:/var/lib/docker/overlay2/990215f8e1b360dd0d53ffda77d29ba34b39d89b6e3d9fb85ecd802a8d680fd1/diff:/var/lib/docker/overlay2/821a113c6614a7ae60dff6e9005d482cdcbc9fb4f8c724ac2441bedf7b0fdc38/diff:/var/lib/docker/overlay2/6c037d5065f51c542bdbf334d3242d55ac7f6b6b3ef9659b6da7eb8d58772f39/diff:/var/lib/docker/overlay2/b1c8e9ec245b6b7ecc410dae6968907148abce9ebdc654befb7138198d993311/diff:/var/lib/docker/overlay2/1e460078a057aac13c526ec04b01ae7057aaaf37da99eded4e906905974ddcb3/diff:/var/lib/docker/overlay2/e1290a2c983cf180cc5a4dde671202861374d590ce59612b48f1d81e24193ad1/diff:/var/lib/docker/overlay2/11ac289bb5cd3ca7adc9a87f6aa381e64901214029da94963ca48c60f0b1f2de/diff:/var/lib/docker/overlay2/ea7867a35ec1a1c9191c62b7962a3c7601d117a0863074177b599cf89a248b8a/diff:/var/lib/docker/overlay2/c71c6c43c11a6dfd5946c0194008fcb436068434e7708f80f7629030bec00905/diff:/var/lib/docker/overlay2/7a044e4d5561aad56a878c47abd308c8d71d4e3a4c2e3cc9ea6b3768b9b186c5/diff:/var/lib/docker/overlay2/d844f841c3b544704e51d3603459f887f7b7303b2e0321dcbc71cc5f4fcce0d5/diff:/var/lib/docker/overlay2/d60b6c01c5c7c2f61dd12db58425cfa230c92c45852d263d4b65387c14b9bdb1/diff:/var/lib/docker/overlay2/0b92145152a964ffaf8de673a59a5bd1e837b7671ac8e9f4364159fd093da04e/diff:/var/lib/docker/overlay2/c0f794baaf49b115efc240fb0405c9745ce7f924760c4f0b4a5b45b62d2f8ba9/diff:/var/lib/docker/overlay2/a6b6e200eff418c21a3987702ac0087445b8bfedfe0ebc6745284e1ff4689e92/diff:/var/lib/docker/overlay2/d713e4dcbd62767cb8d03e28d0e5cf4e639cf891dbf0e339a128317fb7acc26c/diff:/var/lib/docker/overlay2/fd0ac1e1a67901928d7debadb8be7f8b420525a29dc3d3f42e45274d7540dc76/diff:/var/lib/docker/overlay2/ae24adfc00fb200e49f0e55c1cd5571665acd9224ba67205ad535ccf810b4a1d/diff:/var/lib/docker/overlay2/4eda072040bf689c6bc303b58beb01ababdbc6ba6f879644c73de9c694b33f08/diff:/var/lib/docker/overlay2/fdc5e5689601dc92f6e20c665524fba39f8cab962b793bba8d800e1bb195a0a2/diff",
            "MergedDir": "/var/lib/docker/overlay2/d8003a5aaca951212c853161b0be233197885c8e6e991e6ee486cc93b62db2be/merged",
            "UpperDir": "/var/lib/docker/overlay2/d8003a5aaca951212c853161b0be233197885c8e6e991e6ee486cc93b62db2be/diff",
            "WorkDir": "/var/lib/docker/overlay2/d8003a5aaca951212c853161b0be233197885c8e6e991e6ee486cc93b62db2be/work"
        },
        "Name": "overlay2"
    },
    "RootFS": {
        "Type": "layers",
        "Layers": [
            "sha256:7bb20cf5ef67526cb843d264145241ce4dde09a337b5be1be42ba464de9a672d",
            "sha256:c7e70c519c8c60876ae66d368dadc52981a0c289acace68a2ac7f8ad1fae4828",
            "sha256:571b9a150b87f7bd0ebde9b92b0aaf459283a588b6d0b01aecc1bb281336872c",
            "sha256:6be78693c259f71e01299827bf7f112581fc2a6fb50f2b68215abf583b823f54",
            "sha256:1267448d5cf5d97e42b4570248297cae0f2f94e3260cc4e111192a4ba2d83cd0",
            "sha256:ac37f57ab2829aae91651eaccda698c2c31b2988f91803d53bdf56e570185c98",
            "sha256:5d567936a42d2ccba4948aa9682003852e8b346ddb7c024e114f7c19939f22ae",
            "sha256:ec165ba8975c0c53395bf9b63dfd7f9176ce340776c2e46ed36a6796802b73dc",
            "sha256:74ac5ae1d98e6938d1a917dcd7d70028b9d9598cd519d8a4dd77eebb564f142d",
            "sha256:588847fc242e2f7b36829cffc68e331178f65e91a09fab9cc0904be84e29df76",
            "sha256:dc55e341f4e06eb4a92eea92b16e550ba4dbbf53dd543c45986ad5e3a4ca46ff",
            "sha256:c31c2efb000b4fd9ea19621e3c9fb1a01410571ddc981cf406045bc9c4e5b6e8",
            "sha256:060a68892d23ff8d434bd468b0ba15c93580f34ac0adee6d2ad1d15442366e15",
            "sha256:c5cb047bc09d41f08ffef2968f021963931e1990e663f8c02b2cb05541ebb978",
            "sha256:7e50ad68c3e38d4da70049de0671585e27ebd7e52d6175cd3b6aea9f7c5ac94d",
            "sha256:cfd4618b49b0fdf671e76020ca02624205396e2e2fb5ca95f2dcda03eeed0b5d",
            "sha256:5f70bf18a086007016e948b04aed3b82103a36bea41755b6cddfaf10ace3c6ef",
            "sha256:5f70bf18a086007016e948b04aed3b82103a36bea41755b6cddfaf10ace3c6ef",
            "sha256:55bb366e6971804be7f946e30c97176d2829b838237720c45db7fcee13f32b1f",
            "sha256:4b4b6310fd86ab7aa1536d7a04ca7967bae719d953d63f623db09b7c866378a8",
            "sha256:cc728c1d4ec612d2e0cecb4dc706c0f3936b8a2a5b5d0037047c044da16ad6e1",
            "sha256:aa30b5856589b3757a0c040c81b6e4169cbec343bd60aa2715bb482f8111d944",
            "sha256:f53f1215eee90f1af46bb54e5b8d0bd20649a9759a7e9a2b69b0aa54eb5a34d8",
            "sha256:a214c2152fb95a8cf8d4f4efbb9b0cbb73438471a17c31b1040daabacbc59087",
            "sha256:b53658fdd526b5750cd88ee64adb321ede405876c34115e1a749919ea7d30c11",
            "sha256:5f70bf18a086007016e948b04aed3b82103a36bea41755b6cddfaf10ace3c6ef"
        ]
    },
    "Metadata": {
        "LastTagTime": "2025-12-19T16:39:01.184084599+08:00"
    }
}

更多版本