logo
ghcr.io/cshdotcom/readest-lite:sha-ea4eca7
linux/amd64 ghcr.io c13586 贡献

Readest Lite是一个轻量级的阅读工具镜像,用于提供简洁的阅读体验和文档浏览功能。

12
浏览次数
2.40GB
镜像大小
国内镜像
swr.cn-north-4.myhuaweicloud.com/ddn-k8s/ghcr.io/cshdotcom/readest-lite:sha-ea4eca7
源镜像
ghcr.io/cshdotcom/readest-lite:sha-ea4eca7
镜像ID
sha256:34799b21b88b300b3ec312d0c5912dddd139ea44fd58d9305942b462e1f5cc04
镜像 TAG
sha-ea4eca7
镜像大小
2.40GB
平台架构
linux/amd64
镜像源
ghcr.io
CMD
启动入口
/entrypoint.sh
工作目录
/app
OS/平台
linux/amd64
镜像创建
2026-07-09T04:48:02.106483515Z
同步时间
2026-07-09 16:49
浏览量
12 次
贡献者
avatar c13586
🔌 开放端口 1
8225/tcp
⚙️ 环境变量 9
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=production 3
PORT=8225 4
HOSTNAME=0.0.0.0 5
DATABASE_URL=file:/data/db/readest.db 6
BOOKS_DIR=/data/books 7
INBOX_DIR=/data/inbox 8
🏷️ 镜像标签 8
KeyValue
2026-07-09T04:43:02.101Z org.opencontainers.image.created
Single-container self-hostable Readest fork — SQLite + local FS, no Supabase, no paywall org.opencontainers.image.description
AGPL-3.0 org.opencontainers.image.licenses
ea4eca7148b909fb3cc6a00ea33346441ed45439 org.opencontainers.image.revision
https://github.com/cshdotcom/readest-lite org.opencontainers.image.source
readest-lite org.opencontainers.image.title
https://github.com/cshdotcom/readest-lite org.opencontainers.image.url
main org.opencontainers.image.version
🛡️ 镜像安全扫描
debian 12.14 Trivy 2026-07-09 16:49 查看完整报告
127
低危 LOW
96
中危 MEDIUM
49
高危 HIGH
5
严重 CRITICAL
受影响目标 (3)
ghcr.io/cshdotcom/readest-lite:sha-ea4eca7 (debian 12.14) debian Node.js node-pkg app/node_modules/.pnpm/@typescript+native-preview-linux-x64@7.0.0-dev.20260312.1/node_modules/@typescript/native-preview-linux-x64/lib/tsgo gobinary

Docker拉取命令

docker pull swr.cn-north-4.myhuaweicloud.com/ddn-k8s/ghcr.io/cshdotcom/readest-lite:sha-ea4eca7
docker tag  swr.cn-north-4.myhuaweicloud.com/ddn-k8s/ghcr.io/cshdotcom/readest-lite:sha-ea4eca7  ghcr.io/cshdotcom/readest-lite:sha-ea4eca7

Containerd拉取命令

ctr images pull swr.cn-north-4.myhuaweicloud.com/ddn-k8s/ghcr.io/cshdotcom/readest-lite:sha-ea4eca7
ctr images tag  swr.cn-north-4.myhuaweicloud.com/ddn-k8s/ghcr.io/cshdotcom/readest-lite:sha-ea4eca7  ghcr.io/cshdotcom/readest-lite:sha-ea4eca7

Shell快速替换命令

sed -i 's#ghcr.io/cshdotcom/readest-lite:sha-ea4eca7#swr.cn-north-4.myhuaweicloud.com/ddn-k8s/ghcr.io/cshdotcom/readest-lite:sha-ea4eca7#' deployment.yaml

Ansible快速分发-Docker

#ansible k8s -m shell -a 'docker pull swr.cn-north-4.myhuaweicloud.com/ddn-k8s/ghcr.io/cshdotcom/readest-lite:sha-ea4eca7 && docker tag  swr.cn-north-4.myhuaweicloud.com/ddn-k8s/ghcr.io/cshdotcom/readest-lite:sha-ea4eca7  ghcr.io/cshdotcom/readest-lite:sha-ea4eca7'

Ansible快速分发-Containerd

#ansible k8s -m shell -a 'ctr images pull swr.cn-north-4.myhuaweicloud.com/ddn-k8s/ghcr.io/cshdotcom/readest-lite:sha-ea4eca7 && ctr images tag  swr.cn-north-4.myhuaweicloud.com/ddn-k8s/ghcr.io/cshdotcom/readest-lite:sha-ea4eca7  ghcr.io/cshdotcom/readest-lite:sha-ea4eca7'

镜像构建历史


# 2026-07-09 12:48:02  0.00B 配置容器启动时运行的命令
ENTRYPOINT ["/entrypoint.sh"]
                        
# 2026-07-09 12:48:02  0.00B 执行命令并创建新的镜像层
RUN /bin/sh -c chmod +x /entrypoint.sh # buildkit
                        
# 2026-07-09 12:48:02  1.51KB 复制新文件或目录到容器中
COPY --chown=node:node docker/entrypoint.sh /entrypoint.sh # buildkit
                        
# 2026-07-09 12:48:01  0.00B 声明容器运行时监听的端口
EXPOSE [8225/tcp]
                        
# 2026-07-09 12:48:01  0.00B 指定运行容器时使用的用户
USER node
                        
# 2026-07-09 12:48:01  0.00B 执行命令并创建新的镜像层
RUN /bin/sh -c mkdir -p /data/db /data/books /data/inbox && chown -R node:node /data # buildkit
                        
# 2026-07-09 12:48:01  1.90GB 复制新文件或目录到容器中
COPY --chown=node:node /app/node_modules/.pnpm ./node_modules/.pnpm # buildkit
                        
# 2026-07-09 12:47:43  55.98KB 复制新文件或目录到容器中
COPY --chown=node:node /app/apps/readest-app/node_modules ./apps/readest-app/node_modules # buildkit
                        
# 2026-07-09 12:47:43  65.60KB 复制新文件或目录到容器中
COPY --chown=node:node /app/apps/readest-app/scripts ./apps/readest-app/scripts # buildkit
                        
# 2026-07-09 12:47:42  17.48KB 复制新文件或目录到容器中
COPY --chown=node:node /app/prisma ./prisma # buildkit
                        
# 2026-07-09 12:47:42  101.27MB 复制新文件或目录到容器中
COPY --chown=node:node /app/apps/readest-app/public ./apps/readest-app/public # buildkit
                        
# 2026-07-09 12:47:41  34.76MB 复制新文件或目录到容器中
COPY --chown=node:node /app/apps/readest-app/.next/static ./apps/readest-app/.next/static # buildkit
                        
# 2026-07-09 12:47:33  122.78MB 复制新文件或目录到容器中
COPY --chown=node:node /app/apps/readest-app/.next/standalone ./ # buildkit
                        
# 2026-06-26 12:14:34  16.78MB 执行命令并创建新的镜像层
RUN /bin/sh -c apt-get update && apt-get install -y --no-install-recommends     openssl sqlite3 ca-certificates curl     && rm -rf /var/lib/apt/lists/* # buildkit
                        
# 2026-06-26 12:14:29  0.00B 设置工作目录为/app
WORKDIR /app
                        
# 2026-06-26 12:14:29  0.00B 设置环境变量 INBOX_DIR
ENV INBOX_DIR=/data/inbox
                        
# 2026-06-26 12:14:29  0.00B 设置环境变量 BOOKS_DIR
ENV BOOKS_DIR=/data/books
                        
# 2026-06-26 12:14:29  0.00B 设置环境变量 DATABASE_URL
ENV DATABASE_URL=file:/data/db/readest.db
                        
# 2026-06-26 12:14:29  0.00B 设置环境变量 HOSTNAME
ENV HOSTNAME=0.0.0.0
                        
# 2026-06-26 12:14:29  0.00B 设置环境变量 PORT
ENV PORT=8225
                        
# 2026-06-26 12:14:29  0.00B 设置环境变量 NODE_ENV
ENV NODE_ENV=production
                        
# 2026-06-25 02:12:30  0.00B 设置默认要执行的命令
CMD ["node"]
                        
# 2026-06-25 02:12:30  0.00B 配置容器启动时运行的命令
ENTRYPOINT ["docker-entrypoint.sh"]
                        
# 2026-06-25 02:12:30  388.00B 复制新文件或目录到容器中
COPY docker-entrypoint.sh /usr/local/bin/ # buildkit
                        
# 2026-06-25 02:12:30  7.18MB 执行命令并创建新的镜像层
RUN /bin/sh -c set -ex   && savedAptMark="$(apt-mark showmanual)"   && apt-get update && apt-get install -y ca-certificates curl wget gnupg dirmngr --no-install-recommends   && rm -rf /var/lib/apt/lists/*   && 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   && apt-mark auto '.*' > /dev/null   && { [ -z "$savedAptMark" ] || apt-mark manual $savedAptMark > /dev/null; }   && find /usr/local -type f -executable -exec ldd '{}' ';'     | awk '/=>/ { so = $(NF-1); if (index(so, "/usr/local/") == 1) { next }; gsub("^/(usr/)?", "", so); print so }'     | sort -u     | xargs -r dpkg-query --search     | cut -d: -f1     | sort -u     | xargs -r apt-mark manual   && apt-get purge -y --auto-remove -o APT::AutoRemove::RecommendsImportant=false   && yarn --version   && rm -rf /tmp/* # buildkit
                        
# 2026-06-25 02:12:18  0.00B 设置环境变量 YARN_VERSION
ENV YARN_VERSION=1.22.22
                        
# 2026-06-25 02:12:18  144.57MB 执行命令并创建新的镜像层
RUN /bin/sh -c ARCH= OPENSSL_ARCH= && dpkgArch="$(dpkg --print-architecture)"     && case "${dpkgArch##*-}" in       amd64) ARCH='x64' OPENSSL_ARCH='linux-x86_64';;       ppc64el) ARCH='ppc64le' OPENSSL_ARCH='linux-ppc64le';;       s390x) ARCH='s390x' OPENSSL_ARCH='linux*-s390x';;       arm64) ARCH='arm64' OPENSSL_ARCH='linux-aarch64';;       armhf) ARCH='armv7l' OPENSSL_ARCH='linux-armv4';;       *) echo "unsupported architecture"; exit 1 ;;     esac     && set -ex     && apt-get update && apt-get install -y ca-certificates curl wget gnupg dirmngr xz-utils libatomic1 --no-install-recommends     && rm -rf /var/lib/apt/lists/*     && 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-linux-$ARCH.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.tar.xz\$" SHASUMS256.txt | sha256sum -c -     && tar -xJf "node-v$NODE_VERSION-linux-$ARCH.tar.xz" -C /usr/local --strip-components=1 --no-same-owner     && rm "node-v$NODE_VERSION-linux-$ARCH.tar.xz" SHASUMS256.txt.asc SHASUMS256.txt     && find /usr/local/include/node/openssl/archs -mindepth 1 -maxdepth 1 ! -name "$OPENSSL_ARCH" -exec rm -rf {} \;     && apt-mark auto '.*' > /dev/null     && find /usr/local -type f -executable -exec ldd '{}' ';'       | awk '/=>/ { so = $(NF-1); if (index(so, "/usr/local/") == 1) { next }; gsub("^/(usr/)?", "", so); print so }'       | sort -u       | xargs -r dpkg-query --search       | cut -d: -f1       | sort -u       | xargs -r apt-mark manual     && apt-get purge -y --auto-remove -o APT::AutoRemove::RecommendsImportant=false     && ln -s /usr/local/bin/node /usr/local/bin/nodejs     && node --version     && npm --version     && rm -rf /tmp/* # buildkit
                        
# 2026-06-25 02:12:18  0.00B 设置环境变量 NODE_VERSION
ENV NODE_VERSION=24.18.0
                        
# 2026-06-25 02:11:59  8.90KB 执行命令并创建新的镜像层
RUN /bin/sh -c groupadd --gid 1000 node   && useradd --uid 1000 --gid node --shell /bin/bash --create-home node # buildkit
                        
# 2026-06-23 08:00:00  74.83MB 
# debian.sh --arch 'amd64' out/ 'bookworm' '@1782172800'
                        
                    

镜像信息

{
    "Id": "sha256:34799b21b88b300b3ec312d0c5912dddd139ea44fd58d9305942b462e1f5cc04",
    "RepoTags": [
        "ghcr.io/cshdotcom/readest-lite:sha-ea4eca7",
        "swr.cn-north-4.myhuaweicloud.com/ddn-k8s/ghcr.io/cshdotcom/readest-lite:sha-ea4eca7"
    ],
    "RepoDigests": [
        "ghcr.io/cshdotcom/readest-lite@sha256:497f5829b5e3371b2dbe707ad3f02dab21324d8b4a91c9ac27c80fd3b1d98848",
        "swr.cn-north-4.myhuaweicloud.com/ddn-k8s/ghcr.io/cshdotcom/readest-lite@sha256:0a6dd6c80044d73096d474836098410de365361f405099d2f7b72763394f674e"
    ],
    "Parent": "",
    "Comment": "buildkit.dockerfile.v0",
    "Created": "2026-07-09T04:48:02.106483515Z",
    "Container": "",
    "ContainerConfig": null,
    "DockerVersion": "",
    "Author": "",
    "Config": {
        "Hostname": "",
        "Domainname": "",
        "User": "node",
        "AttachStdin": false,
        "AttachStdout": false,
        "AttachStderr": false,
        "ExposedPorts": {
            "8225/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=production",
            "PORT=8225",
            "HOSTNAME=0.0.0.0",
            "DATABASE_URL=file:/data/db/readest.db",
            "BOOKS_DIR=/data/books",
            "INBOX_DIR=/data/inbox"
        ],
        "Cmd": null,
        "Image": "",
        "Volumes": null,
        "WorkingDir": "/app",
        "Entrypoint": [
            "/entrypoint.sh"
        ],
        "OnBuild": null,
        "Labels": {
            "org.opencontainers.image.created": "2026-07-09T04:43:02.101Z",
            "org.opencontainers.image.description": "Single-container self-hostable Readest fork — SQLite + local FS, no Supabase, no paywall",
            "org.opencontainers.image.licenses": "AGPL-3.0",
            "org.opencontainers.image.revision": "ea4eca7148b909fb3cc6a00ea33346441ed45439",
            "org.opencontainers.image.source": "https://github.com/cshdotcom/readest-lite",
            "org.opencontainers.image.title": "readest-lite",
            "org.opencontainers.image.url": "https://github.com/cshdotcom/readest-lite",
            "org.opencontainers.image.version": "main"
        }
    },
    "Architecture": "amd64",
    "Os": "linux",
    "Size": 2400019621,
    "GraphDriver": {
        "Data": {
            "LowerDir": "/var/lib/docker/overlay2/b6eeef50338f60fde3c9b2b44067a28dc4b499551600a2bbb6af01a4ad5b6b3a/diff:/var/lib/docker/overlay2/6f5615c91d15415102150e5729c106a62268df164c0b3aabdb18cabcc006495a/diff:/var/lib/docker/overlay2/969b100591937f2c532253c1e347171efcc9e99e9acf2996402de8db1c7540b6/diff:/var/lib/docker/overlay2/2754241c51d2410619f7319e6e5fc614e4693a3daec52aea8403301547969fa5/diff:/var/lib/docker/overlay2/4f31527e90977a23e861d4338e73ef63ddcd458e1053f7df0bd7342fa0882ef9/diff:/var/lib/docker/overlay2/2d217d3f80c911d93b7d8638a95fe6f3236e775f0e047bbb44b695ad72482cb8/diff:/var/lib/docker/overlay2/621e5d632e38f8b96ebdb4dca9bcfca88f9e3728f342fefd050f1bb7b0bc052a/diff:/var/lib/docker/overlay2/1e819146125a9fffbf226ef3e4a89d1dacc4b76b8f0d7d1cbd2058eddf5d8b0d/diff:/var/lib/docker/overlay2/a7fca5e2b6302a851815563233560ee2b0b3751fab78f731321b4725712deee1/diff:/var/lib/docker/overlay2/caf529e3e24cc926b6b7fb524df8aa181d3289f3df4808ff11a81a5627b7db39/diff:/var/lib/docker/overlay2/778a8d75e1a6627790e250277085df1baa4e90c47f14dc7b8fe22d285bbff4ad/diff:/var/lib/docker/overlay2/f0e630b78855a2b71ec3ffd81279246e2704ad092e2bca4f86e98064e7538e4b/diff:/var/lib/docker/overlay2/aa8436409d577dc1e0a8a10a031a4b24ca06f9879916e014c282218c3ce146bb/diff:/var/lib/docker/overlay2/5ed8f0e38fa10d584d2e133cd84bae3f40096dcd38401b239547c195775858bb/diff:/var/lib/docker/overlay2/bd2a42e287740523c43ca33a9269114a83bb37de12db3c5ab3efd7e1f2eb32dd/diff:/var/lib/docker/overlay2/787006a7d8e6f02c2afe4bb218ae678559d8b39885f0439fa3417720429bc55d/diff",
            "MergedDir": "/var/lib/docker/overlay2/48c7b17d68d7cfde19c9006790a4159fadb69cde45126dcf24b71adb0f9dae86/merged",
            "UpperDir": "/var/lib/docker/overlay2/48c7b17d68d7cfde19c9006790a4159fadb69cde45126dcf24b71adb0f9dae86/diff",
            "WorkDir": "/var/lib/docker/overlay2/48c7b17d68d7cfde19c9006790a4159fadb69cde45126dcf24b71adb0f9dae86/work"
        },
        "Name": "overlay2"
    },
    "RootFS": {
        "Type": "layers",
        "Layers": [
            "sha256:b05a96227958df6091396f6fbd5aa4616df631a65626ac8688c91cfa70d1a7e6",
            "sha256:1e3c00be4e0c46f3aae5f3ecfc161a69f4ee57ca1dd71136598205bce5078e8f",
            "sha256:1310434fbf6de37d2ea1bbc3c4e61460175d58fb84c1f086bb042580811e1865",
            "sha256:f2deae9b9d4b754469c3e626593650f203f4d700c4fabb4674cf91961d585ed0",
            "sha256:b7746439cac32f4e3472960cdf390bb0d634d0bdb527dbdcd9e54f9662bdfaad",
            "sha256:d102a163981e4e6716a9a87a49c3ebdcaf71292de16c370f8601ba317f2d8963",
            "sha256:74ac4ee7feaf53b221d8f04a7612d618916d4481b6ca98d02f204f706a90c6d0",
            "sha256:a8afa98c15f795bd6847732f7d5a37735e7801aa49caaa32046992f8149bba32",
            "sha256:7870bcac8955f1b50a29fb1e7829e74dbfaf8f551da6d7c926e2b2c10f60e3f8",
            "sha256:5d2b8257ec9a3eb6827f6bfce2ffe1d980566f89b5b8d0e5fb9b206f8088a4e5",
            "sha256:e3261cd36efe670dafab94a43efe313c0f27160a6be1499654ff34e636d0b006",
            "sha256:e9af5077993789d03f8726a1391fb516ffa1324f5d4088835f0cd54e93703c35",
            "sha256:cfc6619fe3b92c893945fb67afc803ea75030faf82b4501c38b657097330cab0",
            "sha256:7d31191cf1ed860b84823980f018c759e172d1261d10effbe6e8ace8d6c4ee5e",
            "sha256:d362d69cd366ce07c6bdf75889ba5ba9bd298ff8760db53aa42a4d1fbdcc73d9",
            "sha256:483e0af0bc41a902325da6b68474d355c335e79b41d4e981f0a2c90ef2fd18e1",
            "sha256:5f70bf18a086007016e948b04aed3b82103a36bea41755b6cddfaf10ace3c6ef"
        ]
    },
    "Metadata": {
        "LastTagTime": "2026-07-09T16:47:28.783313434+08:00"
    }
}

更多版本

ghcr.io/cshdotcom/readest-lite:latest

linux/amd64 ghcr.io2.40GB2026-06-23 21:18
128

ghcr.io/cshdotcom/readest-lite:8.10.3

linux/amd64 ghcr.io2.40GB2026-06-24 20:35
61

ghcr.io/cshdotcom/readest-lite:8.11

linux/amd64 ghcr.io2.40GB2026-07-03 01:09
30

ghcr.io/cshdotcom/readest-lite:8.12.0

linux/amd64 ghcr.io2.40GB2026-07-03 19:25
25

ghcr.io/cshdotcom/readest-lite:sha-ea4eca7

linux/amd64 ghcr.io2.40GB2026-07-09 16:49
11
检测到您正在使用广告拦截插件,本站为公益站点,依赖广告维持运转 🙏 查看如何关闭 ×