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

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

logo
ghcr.io/fe-spark/ecohub:latest
linux/amd64 ghcr.io

ghcr.io/fe-spark/ecohub是存储在GitHub Container Registry中的容器镜像,隶属于fe-spark组织下的ecohub项目,主要用于部署运行ecohub应用,该应用可能涉及生态环保领域的协作、数据管理或相关平台服务。

16
浏览次数
303.16MB
镜像大小
国内镜像
swr.cn-north-4.myhuaweicloud.com/ddn-k8s/ghcr.io/fe-spark/ecohub:latest
源镜像
ghcr.io/fe-spark/ecohub:latest
镜像ID
sha256:380f938efe057d37ed3f68dac4c0ee72ecac2c1abb1e4bc89818b95ba5811037
镜像 TAG
latest
镜像大小
303.16MB
平台架构
linux/amd64
镜像源
ghcr.io
CMD
/usr/bin/supervisord -c /etc/supervisord.conf
启动入口
docker-entrypoint.sh
工作目录
/app
OS/平台
linux/amd64
镜像创建
2026-09-10T16:12:48.968444464Z
同步时间
2026-09-12 00:56
浏览量
16 次
贡献者
🔌 开放端口 2
3000/tcp 8080/tcp
⚙️ 环境变量 8
KeyValue
PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin 0
NODE_VERSION=20.20.2 1
YARN_VERSION=1.22.22 2
NODE_ENV=production 3
NEXT_TELEMETRY_DISABLED=1 4
TZ=Asia/Shanghai 5
PORT=8080 6
API_URL=http://127.0.0.1:8080 7
🏷️ 镜像标签 3
KeyValue
EcoHub All-in-One single image containing both Go server and Next.js web. org.opencontainers.image.description
https://github.com/fe-spark/EcoHub org.opencontainers.image.source
EcoHub All-in-One org.opencontainers.image.title
🛡️ 镜像安全扫描
alpine 3.23.4 Trivy 2026-09-12 00:56 查看完整报告
39
低危 LOW
61
中危 MEDIUM
81
高危 HIGH
3
严重 CRITICAL
受影响目标 (3)
ghcr.io/fe-spark/ecohub:latest (alpine 3.23.4) alpine Node.js node-pkg app/server/main gobinary

Docker拉取命令

docker pull swr.cn-north-4.myhuaweicloud.com/ddn-k8s/ghcr.io/fe-spark/ecohub:latest
docker tag  swr.cn-north-4.myhuaweicloud.com/ddn-k8s/ghcr.io/fe-spark/ecohub:latest  ghcr.io/fe-spark/ecohub:latest

Containerd拉取命令

ctr images pull swr.cn-north-4.myhuaweicloud.com/ddn-k8s/ghcr.io/fe-spark/ecohub:latest
ctr images tag  swr.cn-north-4.myhuaweicloud.com/ddn-k8s/ghcr.io/fe-spark/ecohub:latest  ghcr.io/fe-spark/ecohub:latest

Shell快速替换命令

sed -i 's#ghcr.io/fe-spark/ecohub:latest#swr.cn-north-4.myhuaweicloud.com/ddn-k8s/ghcr.io/fe-spark/ecohub:latest#' deployment.yaml

Ansible快速分发-Docker

#ansible k8s -m shell -a 'docker pull swr.cn-north-4.myhuaweicloud.com/ddn-k8s/ghcr.io/fe-spark/ecohub:latest && docker tag  swr.cn-north-4.myhuaweicloud.com/ddn-k8s/ghcr.io/fe-spark/ecohub:latest  ghcr.io/fe-spark/ecohub:latest'

Ansible快速分发-Containerd

#ansible k8s -m shell -a 'ctr images pull swr.cn-north-4.myhuaweicloud.com/ddn-k8s/ghcr.io/fe-spark/ecohub:latest && ctr images tag  swr.cn-north-4.myhuaweicloud.com/ddn-k8s/ghcr.io/fe-spark/ecohub:latest  ghcr.io/fe-spark/ecohub:latest'

镜像构建历史


# 2026-09-11 00:12:48  0.00B 设置默认要执行的命令
CMD ["/usr/bin/supervisord" "-c" "/etc/supervisord.conf"]
                        
# 2026-09-11 00:12:48  0.00B 声明容器运行时监听的端口
EXPOSE map[3000/tcp:{} 8080/tcp:{}]
                        
# 2026-09-11 00:12:48  551.00B 复制新文件或目录到容器中
COPY supervisord.conf /etc/supervisord.conf # buildkit
                        
# 2026-09-11 00:12:48  6.65MB 复制新文件或目录到容器中
COPY /app/.next/static /app/web/.next/static # buildkit
                        
# 2026-09-11 00:12:48  77.22MB 复制新文件或目录到容器中
COPY /app/.next/standalone /app/web/ # buildkit
                        
# 2026-09-11 00:12:48  15.81KB 复制新文件或目录到容器中
COPY /app/public /app/web/public # buildkit
                        
# 2026-09-11 00:12:21  31.22MB 复制新文件或目录到容器中
COPY /out/main /app/server/main # buildkit
                        
# 2026-09-11 00:11:05  0.00B 设置工作目录为/app
WORKDIR /app
                        
# 2026-09-11 00:11:05  52.36MB 执行命令并创建新的镜像层
RUN /bin/sh -c apk add --no-cache ca-certificates tzdata supervisor # buildkit
                        
# 2026-09-11 00:11:05  0.00B 设置环境变量 NODE_ENV NEXT_TELEMETRY_DISABLED TZ PORT API_URL
ENV NODE_ENV=production NEXT_TELEMETRY_DISABLED=1 TZ=Asia/Shanghai PORT=8080 API_URL=http://127.0.0.1:8080
                        
# 2026-09-11 00:11:05  0.00B 添加元数据标签
LABEL org.opencontainers.image.title=EcoHub All-in-One org.opencontainers.image.description=EcoHub All-in-One single image containing both Go server and Next.js web. org.opencontainers.image.source=https://github.com/fe-spark/EcoHub
                        
# 2026-04-16 04:46:50  0.00B 设置默认要执行的命令
CMD ["node"]
                        
# 2026-04-16 04:46:50  0.00B 配置容器启动时运行的命令
ENTRYPOINT ["docker-entrypoint.sh"]
                        
# 2026-04-16 04:46:50  388.00B 复制新文件或目录到容器中
COPY docker-entrypoint.sh /usr/local/bin/ # buildkit
                        
# 2026-04-16 04:46:50  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-04-16 04:46:47  0.00B 设置环境变量 YARN_VERSION
ENV YARN_VERSION=1.22.22
                        
# 2026-04-16 04:46:47  121.87MB 执行命令并创建新的镜像层
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="2b51a5388f6aaf8e2af65fe3bad6114db0ebd81a1ae1250b1de0cbf034b10c5d" 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-04-16 04:46:47  0.00B 设置环境变量 NODE_VERSION
ENV NODE_VERSION=20.20.2
                        
# 2026-04-16 04:01:40  0.00B 设置默认要执行的命令
CMD ["/bin/sh"]
                        
# 2026-04-16 04:01:40  8.45MB 复制文件或目录到容器中
ADD alpine-minirootfs-3.23.4-x86_64.tar.gz / # buildkit
                        
                    

镜像信息

{
    "Id": "sha256:380f938efe057d37ed3f68dac4c0ee72ecac2c1abb1e4bc89818b95ba5811037",
    "RepoTags": [
        "ghcr.io/fe-spark/ecohub:latest",
        "swr.cn-north-4.myhuaweicloud.com/ddn-k8s/ghcr.io/fe-spark/ecohub:latest"
    ],
    "RepoDigests": [
        "ghcr.io/fe-spark/ecohub@sha256:5b977bec84cf882bac26ab48661b562357197b520783588450b87c85b599f595",
        "swr.cn-north-4.myhuaweicloud.com/ddn-k8s/ghcr.io/fe-spark/ecohub@sha256:13b9c72e39bd05849861004bda8e71c92f2c3012e137b786be2e4ce5deab1332"
    ],
    "Parent": "",
    "Comment": "buildkit.dockerfile.v0",
    "Created": "2026-09-10T16:12:48.968444464Z",
    "Container": "",
    "ContainerConfig": null,
    "DockerVersion": "",
    "Author": "",
    "Config": {
        "Hostname": "",
        "Domainname": "",
        "User": "",
        "AttachStdin": false,
        "AttachStdout": false,
        "AttachStderr": false,
        "ExposedPorts": {
            "3000/tcp": {},
            "8080/tcp": {}
        },
        "Tty": false,
        "OpenStdin": false,
        "StdinOnce": false,
        "Env": [
            "PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin",
            "NODE_VERSION=20.20.2",
            "YARN_VERSION=1.22.22",
            "NODE_ENV=production",
            "NEXT_TELEMETRY_DISABLED=1",
            "TZ=Asia/Shanghai",
            "PORT=8080",
            "API_URL=http://127.0.0.1:8080"
        ],
        "Cmd": [
            "/usr/bin/supervisord",
            "-c",
            "/etc/supervisord.conf"
        ],
        "ArgsEscaped": true,
        "Image": "",
        "Volumes": null,
        "WorkingDir": "/app",
        "Entrypoint": [
            "docker-entrypoint.sh"
        ],
        "OnBuild": null,
        "Labels": {
            "org.opencontainers.image.description": "EcoHub All-in-One single image containing both Go server and Next.js web.",
            "org.opencontainers.image.source": "https://github.com/fe-spark/EcoHub",
            "org.opencontainers.image.title": "EcoHub All-in-One"
        }
    },
    "Architecture": "amd64",
    "Os": "linux",
    "Size": 303155876,
    "GraphDriver": {
        "Data": {
            "LowerDir": "/var/lib/docker/overlay2/db3df8fc711314266859428d04e07817abb97c466b2848f5b5906c9ffafae25c/diff:/var/lib/docker/overlay2/967856c2bae3b2cc42066d924758c2c19592a1b51dfa54e9d69b608a97ab1477/diff:/var/lib/docker/overlay2/5f0740d3fa82a3f99cd1577eee227abfc7178f849711992b390e828f7ec1e8ea/diff:/var/lib/docker/overlay2/4d864d62407a7f4a2cb86460998ab0a8348da94b12865b3e139df626e27dfd49/diff:/var/lib/docker/overlay2/32b5b7851783498a84fc713c8bead7a9d65054bc38dc40008855fadbfe14aa66/diff:/var/lib/docker/overlay2/0ce009c4077313fc92fce4057b2c65f6ee855eb18fc89b2273c6b0bc3def6611/diff:/var/lib/docker/overlay2/81ab4aefba048ac6f8b64c418a583fd527bc605078b9504f2f2192c441a636aa/diff:/var/lib/docker/overlay2/c36dac73b5b1d0464a6e17fadb284f25649b3b80dd35f3cc770e5d17aa8ca569/diff:/var/lib/docker/overlay2/300d5397634d24f6bbad5d18731583f3bc30dd2c8ad665bda440f0703b9e4d69/diff:/var/lib/docker/overlay2/bd1cf78885cf3b9d31005fc12e15825eaab2f213475e21ca5b9d49621961e4de/diff",
            "MergedDir": "/var/lib/docker/overlay2/d5f5dad3fa977770887b881df29828c393aa52afb36ba13e48e40422cb4b8dc6/merged",
            "UpperDir": "/var/lib/docker/overlay2/d5f5dad3fa977770887b881df29828c393aa52afb36ba13e48e40422cb4b8dc6/diff",
            "WorkDir": "/var/lib/docker/overlay2/d5f5dad3fa977770887b881df29828c393aa52afb36ba13e48e40422cb4b8dc6/work"
        },
        "Name": "overlay2"
    },
    "RootFS": {
        "Type": "layers",
        "Layers": [
            "sha256:29df493baa13de438d6d2ece3a8333032e0b7b9b9d8cce4ee82194da255f61e1",
            "sha256:4983b93ee7967564f02cbf6162b75010ce557404a539fba05ee19a0eae01acbc",
            "sha256:e10358715ead9b47009dd04bcd77ac1c8e247f7249ab06517ff913c473a8e38e",
            "sha256:afa543f85b4685a84338df3e2c429edca49bb372b0f49e0c5cc9724c820ad094",
            "sha256:a853287142608d025e76f12d90ce2c67c953d74e91b1ae0a84cd6ac580d43fb5",
            "sha256:474f39c9dab9e1efdbc490fad36887a1d1635fb108792b14d290a7b3ef820e39",
            "sha256:b0ed1556660b53e52296417b28ef21e7bc6c8fc0197b1a5bbef0ed470d8fd643",
            "sha256:1329aeea06a90367b883053cafe2991a4b4ad02c1be12d8d297320aa5c8d9f4a",
            "sha256:93532fdabdf889a66bacda4c436c5e8bd20c3894eba175c62210c6eea4c14b29",
            "sha256:9ca64c27927cec02fb837485d11fc0beed4d42571c06f8724dbe3e97d6f7ad20",
            "sha256:a2d6b424ebeae65aab934996e4184fe24e1cd0a442c8658d75e2fadac68e2161"
        ]
    },
    "Metadata": {
        "LastTagTime": "2026-09-12T00:56:39.338182246+08:00"
    }
}

更多版本

ghcr.io/fe-spark/ecohub:latest

linux/amd64 ghcr.io303.16MB2026-09-12 00:56
15
检测到您正在使用广告拦截插件,本站为公益站点,依赖广告维持运转 🙏 查看如何关闭 ×