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

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

11
浏览次数
2.40GB
镜像大小
源镜像
ghcr.io/cshdotcom/readest-lite:8.12.0
国内镜像
swr.cn-north-4.myhuaweicloud.com/ddn-k8s/ghcr.io/cshdotcom/readest-lite:8.12.0
镜像ID
sha256:8621e2842cd2bbd1b717865ea599bf8ba62e54c449e5de6d35faeedc9f67ae5b
镜像 TAG
8.12.0
镜像大小
2.40GB
平台架构
linux/amd64
镜像源
ghcr.io
CMD
启动入口
/entrypoint.sh
工作目录
/app
OS/平台
linux/amd64
镜像创建
2026-07-03T06:16:02.465519001Z
同步时间
2026-07-03 19:25
浏览量
11 次
贡献者
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-03T06:23:02.892Z 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
e85e8cebf30348d88d57170891d1c3029e295631 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
8.12.0 org.opencontainers.image.version
🛡️ 镜像安全扫描
debian 12.14 Trivy 2026-07-03 19:25 查看完整报告
135
低危 LOW
97
中危 MEDIUM
33
高危 HIGH
5
严重 CRITICAL
受影响目标 (3)
ghcr.io/cshdotcom/readest-lite:8.12.0 (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:8.12.0
docker tag  swr.cn-north-4.myhuaweicloud.com/ddn-k8s/ghcr.io/cshdotcom/readest-lite:8.12.0  ghcr.io/cshdotcom/readest-lite:8.12.0

Containerd拉取命令

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

Shell快速替换命令

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

Ansible快速分发-Docker

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

Ansible快速分发-Containerd

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

镜像构建历史


# 2026-07-03 14:16:02  0.00B 配置容器启动时运行的命令
ENTRYPOINT ["/entrypoint.sh"]
                        
# 2026-07-03 14:16:02  0.00B 执行命令并创建新的镜像层
RUN /bin/sh -c chmod +x /entrypoint.sh # buildkit
                        
# 2026-07-03 14:16:02  1.51KB 复制新文件或目录到容器中
COPY --chown=node:node docker/entrypoint.sh /entrypoint.sh # buildkit
                        
# 2026-07-03 14:16:02  0.00B 声明容器运行时监听的端口
EXPOSE [8225/tcp]
                        
# 2026-07-03 14:16:02  0.00B 指定运行容器时使用的用户
USER node
                        
# 2026-07-03 14:16:02  0.00B 执行命令并创建新的镜像层
RUN /bin/sh -c mkdir -p /data/db /data/books /data/inbox && chown -R node:node /data # buildkit
                        
# 2026-07-03 14:16:01  1.90GB 复制新文件或目录到容器中
COPY --chown=node:node /app/node_modules/.pnpm ./node_modules/.pnpm # buildkit
                        
# 2026-07-03 14:15:43  55.98KB 复制新文件或目录到容器中
COPY --chown=node:node /app/apps/readest-app/node_modules ./apps/readest-app/node_modules # buildkit
                        
# 2026-07-03 14:15:43  65.60KB 复制新文件或目录到容器中
COPY --chown=node:node /app/apps/readest-app/scripts ./apps/readest-app/scripts # buildkit
                        
# 2026-07-03 14:15:43  17.48KB 复制新文件或目录到容器中
COPY --chown=node:node /app/prisma ./prisma # buildkit
                        
# 2026-07-03 14:15:43  101.26MB 复制新文件或目录到容器中
COPY --chown=node:node /app/apps/readest-app/public ./apps/readest-app/public # buildkit
                        
# 2026-07-03 14:15:42  34.61MB 复制新文件或目录到容器中
COPY --chown=node:node /app/apps/readest-app/.next/static ./apps/readest-app/.next/static # buildkit
                        
# 2026-07-03 14:15:42  122.69MB 复制新文件或目录到容器中
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:8621e2842cd2bbd1b717865ea599bf8ba62e54c449e5de6d35faeedc9f67ae5b",
    "RepoTags": [
        "ghcr.io/cshdotcom/readest-lite:8.12.0",
        "swr.cn-north-4.myhuaweicloud.com/ddn-k8s/ghcr.io/cshdotcom/readest-lite:8.12.0"
    ],
    "RepoDigests": [
        "ghcr.io/cshdotcom/readest-lite@sha256:a200c52d3c71a054dd87aa2570b9ea1e3a646d253059be97a3ed483787a84d74",
        "swr.cn-north-4.myhuaweicloud.com/ddn-k8s/ghcr.io/cshdotcom/readest-lite@sha256:c6278068f5abe52ee09f7c5bc1c5751aa7bb341dac97178c76fc6209360fba00"
    ],
    "Parent": "",
    "Comment": "buildkit.dockerfile.v0",
    "Created": "2026-07-03T06:16:02.465519001Z",
    "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-03T06:23:02.892Z",
            "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": "e85e8cebf30348d88d57170891d1c3029e295631",
            "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": "8.12.0"
        }
    },
    "Architecture": "amd64",
    "Os": "linux",
    "Size": 2399778436,
    "GraphDriver": {
        "Data": {
            "LowerDir": "/var/lib/docker/overlay2/052a0513718ee350bd9310bd5d87a75df15255aa325990dfb742d2a40b6d5172/diff:/var/lib/docker/overlay2/e937afdc4b51bcccba793600160dc9f08fd02be6bf8738a307e4e53b322c84b2/diff:/var/lib/docker/overlay2/fe5e03ba381c3aec7e63100505f8432bfc2d86b35a02ef0bdf03ac29eb2df0bb/diff:/var/lib/docker/overlay2/38cfbd6dfe59389d1fcc37c44109bde26d68d6201edaa1a40ef23a1ada24fd27/diff:/var/lib/docker/overlay2/438bb7c6633e7193d5260583ae95cf1df3bdc4a3957781ee5c3eb21fb34b8022/diff:/var/lib/docker/overlay2/1d227a4ba6c11d158b6c9f23a4e6dc4b1f17a4d809dfce96e244793a4aaf2009/diff:/var/lib/docker/overlay2/2592db6a6d0b6fd700cac0f3b51182a22b44c1e1822d38022a9a5075cf44b5f8/diff:/var/lib/docker/overlay2/881503e154e7fc7f3482ab26eaab25c24299b72e73f6758f375685e9f0907024/diff:/var/lib/docker/overlay2/4afd00e893ec4741f6866421263aac5640696eb3eb27ade6e18addb9293f180d/diff:/var/lib/docker/overlay2/a399ca0c428534d834dbf1fde8217e7a6973520fb74f5ab64e4485f92cdcdc6f/diff:/var/lib/docker/overlay2/9233a01bdf6da306a28f296da40021082189870e3241c78ebaf8970652e4905d/diff:/var/lib/docker/overlay2/b35a6ba040265462f15758382282be2cc23dce77281b1ae6fbb4a308546ff2bf/diff:/var/lib/docker/overlay2/30257d42bcd39a1333f525ed3a6f97944f3e5ae11baa62931e2575d3d79a8736/diff:/var/lib/docker/overlay2/0b19c333fca2f05f4577b91ed5a71341f373ad08c1ddaf0ca935269927fc1a69/diff:/var/lib/docker/overlay2/5a2cebb8f6b1c712b8b22f335154c306bb5bc2c60bd62349b5ca9c2122b8fd65/diff:/var/lib/docker/overlay2/49476fd69318e305e7ea9b8c2b0edf5f0fa59fba03c65e31c9ec20be0f4c706e/diff",
            "MergedDir": "/var/lib/docker/overlay2/9be32fa7da95bc31e5a13c39bc181d5311be02317c3dfd444f1a000fc3de8d2b/merged",
            "UpperDir": "/var/lib/docker/overlay2/9be32fa7da95bc31e5a13c39bc181d5311be02317c3dfd444f1a000fc3de8d2b/diff",
            "WorkDir": "/var/lib/docker/overlay2/9be32fa7da95bc31e5a13c39bc181d5311be02317c3dfd444f1a000fc3de8d2b/work"
        },
        "Name": "overlay2"
    },
    "RootFS": {
        "Type": "layers",
        "Layers": [
            "sha256:b05a96227958df6091396f6fbd5aa4616df631a65626ac8688c91cfa70d1a7e6",
            "sha256:1e3c00be4e0c46f3aae5f3ecfc161a69f4ee57ca1dd71136598205bce5078e8f",
            "sha256:1310434fbf6de37d2ea1bbc3c4e61460175d58fb84c1f086bb042580811e1865",
            "sha256:f2deae9b9d4b754469c3e626593650f203f4d700c4fabb4674cf91961d585ed0",
            "sha256:b7746439cac32f4e3472960cdf390bb0d634d0bdb527dbdcd9e54f9662bdfaad",
            "sha256:d102a163981e4e6716a9a87a49c3ebdcaf71292de16c370f8601ba317f2d8963",
            "sha256:74ac4ee7feaf53b221d8f04a7612d618916d4481b6ca98d02f204f706a90c6d0",
            "sha256:5c94233831115b070f4faac38ffa6bd4ce6592d29af016b878dd2a33406b73d6",
            "sha256:0be63547345b24d8bd356a94b0b4e035d6a69fcb2c4776a036156b6fd75386d4",
            "sha256:347bd92b4a3d5f06005952942471fb12a90aa28bd797a7af2496c1f76f4e58b6",
            "sha256:91c75dafe67fdf535af0c415f3da6d02d69b88f995e564853cb0973dcc1e3bf8",
            "sha256:a97998b36c6b54d06d175a7ef58ac93b9b8b614f6a517757b4a0e8742034ca46",
            "sha256:0af0758cc7b241aa4a83bc8c559f96267489c90f22c8fe23db37fa3f5986f039",
            "sha256:73240d53b8a24e6638431a75350b7e0e76e719c68c4b676f1a9a7cf26814b8b5",
            "sha256:fc4f86acb48a0254848cf84e7e4d2255ab2afa754dbdf841e570eb56e2f0e91e",
            "sha256:9624854634d977ecde005c9cc69e488f7aaec96b0c02806f12c30f881fa746cb",
            "sha256:5f70bf18a086007016e948b04aed3b82103a36bea41755b6cddfaf10ace3c6ef"
        ]
    },
    "Metadata": {
        "LastTagTime": "2026-07-03T19:23:22.361854672+08:00"
    }
}

更多版本

ghcr.io/cshdotcom/readest-lite:latest

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

ghcr.io/cshdotcom/readest-lite:8.10.3

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

ghcr.io/cshdotcom/readest-lite:8.11

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

ghcr.io/cshdotcom/readest-lite:8.12.0

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