ghcr.io/fccview/jotty:latest linux/amd64

ghcr.io/fccview/jotty:latest - 国内下载镜像源 浏览次数:10

温馨提示:此镜像为latest tag镜像,本站无法保证此版本为最新镜像

源镜像 ghcr.io/fccview/jotty:latest
国内镜像 swr.cn-north-4.myhuaweicloud.com/ddn-k8s/ghcr.io/fccview/jotty:latest
镜像ID sha256:e6453fbb463b1e4c22d88caa24424c8d64e3997c7512b67edeba32298ad011c9
镜像TAG latest
大小 274.71MB
镜像源 ghcr.io
CMD node server.js
启动入口 /usr/local/bin/docker-entrypoint.sh
工作目录 /app
OS/平台 linux/amd64
浏览量 10 次
贡献者
镜像创建 2025-12-19T13:24:45.266121843Z
同步时间 2025-12-24 10:36
更新时间 2025-12-24 15:36
开放端口
3000/tcp
环境变量
PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin NODE_VERSION=20.19.6 YARN_VERSION=1.22.22 NODE_ENV=production NEXT_TELEMETRY_DISABLED=1 PORT=3000 HOSTNAME=0.0.0.0
镜像标签
2025-12-19T13:17:48.602Z: org.opencontainers.image.created A simple, self-hosted app for your checklists and notes.: org.opencontainers.image.description AGPL-3.0: org.opencontainers.image.licenses bd41f93665f0dab8ab91360ce4220f4ba27c3ff8: org.opencontainers.image.revision https://github.com/fccview/jotty: org.opencontainers.image.source jotty: org.opencontainers.image.title https://github.com/fccview/jotty: org.opencontainers.image.url 1.14.4-amd64: org.opencontainers.image.version

Docker拉取命令

docker pull swr.cn-north-4.myhuaweicloud.com/ddn-k8s/ghcr.io/fccview/jotty:latest
docker tag  swr.cn-north-4.myhuaweicloud.com/ddn-k8s/ghcr.io/fccview/jotty:latest  ghcr.io/fccview/jotty:latest

Containerd拉取命令

ctr images pull swr.cn-north-4.myhuaweicloud.com/ddn-k8s/ghcr.io/fccview/jotty:latest
ctr images tag  swr.cn-north-4.myhuaweicloud.com/ddn-k8s/ghcr.io/fccview/jotty:latest  ghcr.io/fccview/jotty:latest

Shell快速替换命令

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

Ansible快速分发-Docker

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

Ansible快速分发-Containerd

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

镜像构建历史


# 2025-12-19 21:24:45  0.00B 设置默认要执行的命令
CMD ["node" "server.js"]
                        
# 2025-12-19 21:24:45  0.00B 配置容器启动时运行的命令
ENTRYPOINT ["/usr/local/bin/docker-entrypoint.sh"]
                        
# 2025-12-19 21:24:45  0.00B 设置环境变量 HOSTNAME
ENV HOSTNAME=0.0.0.0
                        
# 2025-12-19 21:24:45  0.00B 设置环境变量 PORT
ENV PORT=3000
                        
# 2025-12-19 21:24:45  0.00B 声明容器运行时监听的端口
EXPOSE [3000/tcp]
                        
# 2025-12-19 21:24:45  809.00B 执行命令并创建新的镜像层
RUN /bin/sh -c chmod +x /usr/local/bin/docker-entrypoint.sh # buildkit
                        
# 2025-12-19 21:24:45  809.00B 复制新文件或目录到容器中
COPY docker-entrypoint.sh /usr/local/bin/ # buildkit
                        
# 2025-12-19 21:24:45  81.34KB 复制新文件或目录到容器中
COPY /app/howto ./howto # buildkit
                        
# 2025-12-19 21:24:45  36.81MB 复制新文件或目录到容器中
COPY /app/public ./public # buildkit
                        
# 2025-12-19 21:24:45  10.89MB 复制新文件或目录到容器中
COPY --chown=1000:1000 /app/.next/static ./.next/static # buildkit
                        
# 2025-12-19 21:24:45  92.27MB 复制新文件或目录到容器中
COPY --chown=1000:1000 /app/.next/standalone ./ # buildkit
                        
# 2025-12-19 20:19:50  0.00B 执行命令并创建新的镜像层
RUN /bin/sh -c mkdir -p /app/.next/cache &&     chown -R 1000:1000 /app/.next # buildkit
                        
# 2025-12-19 20:19:50  0.00B 执行命令并创建新的镜像层
RUN /bin/sh -c mkdir -p /app/data/users /app/data/checklists /app/data/notes &&     chown -R 1000:1000 /app/data # buildkit
                        
# 2025-12-19 20:19:50  0.00B 执行命令并创建新的镜像层
RUN /bin/sh -c if ! getent passwd 1000 > /dev/null 2>&1; then         GROUP_NAME=$(getent group 1000 | cut -d: -f1);         adduser --system --uid 1000 --gid "$GROUP_NAME" appuser;     fi # buildkit
                        
# 2025-12-19 20:19:50  0.00B 执行命令并创建新的镜像层
RUN /bin/sh -c if ! getent group 1000 > /dev/null 2>&1; then         addgroup --system --gid 1000 appgroup;     fi # buildkit
                        
# 2025-12-19 20:19:50  38.60KB 执行命令并创建新的镜像层
RUN /bin/sh -c apk add --no-cache su-exec # buildkit
                        
# 2025-12-19 20:19:50  0.00B 设置环境变量 NEXT_TELEMETRY_DISABLED
ENV NEXT_TELEMETRY_DISABLED=1
                        
# 2025-12-19 20:19:50  0.00B 设置环境变量 NODE_ENV
ENV NODE_ENV=production
                        
# 2025-12-19 20:19:50  0.00B 设置工作目录为/app
WORKDIR /app
                        
# 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:e6453fbb463b1e4c22d88caa24424c8d64e3997c7512b67edeba32298ad011c9",
    "RepoTags": [
        "ghcr.io/fccview/jotty:latest",
        "swr.cn-north-4.myhuaweicloud.com/ddn-k8s/ghcr.io/fccview/jotty:latest"
    ],
    "RepoDigests": [
        "ghcr.io/fccview/jotty@sha256:ce45ad69946875cb6154c2bb8ab3168d0d48dca1bf6f2705d9d362cbeb30e2cd",
        "swr.cn-north-4.myhuaweicloud.com/ddn-k8s/ghcr.io/fccview/jotty@sha256:f9a79c4140ed3dd640d716b439a58d083b219f51a7d864fa1e4fe4eb674496a5"
    ],
    "Parent": "",
    "Comment": "buildkit.dockerfile.v0",
    "Created": "2025-12-19T13:24:45.266121843Z",
    "Container": "",
    "ContainerConfig": null,
    "DockerVersion": "",
    "Author": "",
    "Config": {
        "Hostname": "",
        "Domainname": "",
        "User": "",
        "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=20.19.6",
            "YARN_VERSION=1.22.22",
            "NODE_ENV=production",
            "NEXT_TELEMETRY_DISABLED=1",
            "PORT=3000",
            "HOSTNAME=0.0.0.0"
        ],
        "Cmd": [
            "node",
            "server.js"
        ],
        "ArgsEscaped": true,
        "Image": "",
        "Volumes": null,
        "WorkingDir": "/app",
        "Entrypoint": [
            "/usr/local/bin/docker-entrypoint.sh"
        ],
        "OnBuild": null,
        "Labels": {
            "org.opencontainers.image.created": "2025-12-19T13:17:48.602Z",
            "org.opencontainers.image.description": "A simple, self-hosted app for your checklists and notes.",
            "org.opencontainers.image.licenses": "AGPL-3.0",
            "org.opencontainers.image.revision": "bd41f93665f0dab8ab91360ce4220f4ba27c3ff8",
            "org.opencontainers.image.source": "https://github.com/fccview/jotty",
            "org.opencontainers.image.title": "jotty",
            "org.opencontainers.image.url": "https://github.com/fccview/jotty",
            "org.opencontainers.image.version": "1.14.4-amd64"
        }
    },
    "Architecture": "amd64",
    "Os": "linux",
    "Size": 274705899,
    "GraphDriver": {
        "Data": {
            "LowerDir": "/var/lib/docker/overlay2/cde345e3d3f785973ca6c4dad4a3f4d4959d74baac7a52618c43f742f49b5a50/diff:/var/lib/docker/overlay2/1d63bda007caacc486b2cad2ae9fb661d539edc3e544f6d31f4f926b5144db59/diff:/var/lib/docker/overlay2/a3c100f256071d5477edf34d73b16df7cc6453d9c3aa6de3006c529008f2fb9d/diff:/var/lib/docker/overlay2/e4e3242e9cbd5eca0b0ad580fde2adcac58619a6676cc81ce4657728fb3ddc10/diff:/var/lib/docker/overlay2/4ae017b0c2d0b3105362be4400c5258b0d28956ac016f61895f65757a6191f82/diff:/var/lib/docker/overlay2/4a87177fa6b3c1728518ce17e46b6cad81d41a197b792587892d5730644cd18d/diff:/var/lib/docker/overlay2/db2e665973355c94344ed9a2a1f05d00522b1497211c53ec0daf448e70fab8b5/diff:/var/lib/docker/overlay2/ed263037c7d84cca98ceacee021d8e112afff6664b3e7bb697b3ff8cf7b77006/diff:/var/lib/docker/overlay2/ccadb601d8e56f7abc47b83677cba250a3774b4dc190114af001949e73397f5f/diff:/var/lib/docker/overlay2/52ef9e8f9de15efd5ca30589535d95479990fe13ca4b8c1a9b9c576b8d952b01/diff:/var/lib/docker/overlay2/ceec0caec3e47a46fcd03689cd05fdb59fdfd8a5c101bcac82383714c5d7a8ee/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/5cf86a8da2551ac0f4e5c52e5d2d48c109444cbd4b107ec0438a86370a4f88b7/merged",
            "UpperDir": "/var/lib/docker/overlay2/5cf86a8da2551ac0f4e5c52e5d2d48c109444cbd4b107ec0438a86370a4f88b7/diff",
            "WorkDir": "/var/lib/docker/overlay2/5cf86a8da2551ac0f4e5c52e5d2d48c109444cbd4b107ec0438a86370a4f88b7/work"
        },
        "Name": "overlay2"
    },
    "RootFS": {
        "Type": "layers",
        "Layers": [
            "sha256:7bb20cf5ef67526cb843d264145241ce4dde09a337b5be1be42ba464de9a672d",
            "sha256:c7e70c519c8c60876ae66d368dadc52981a0c289acace68a2ac7f8ad1fae4828",
            "sha256:571b9a150b87f7bd0ebde9b92b0aaf459283a588b6d0b01aecc1bb281336872c",
            "sha256:6be78693c259f71e01299827bf7f112581fc2a6fb50f2b68215abf583b823f54",
            "sha256:fb822fea43b5b7cf4e886264172e742487b5a75a015f87dabda43aa69225edeb",
            "sha256:8962c33728c2fe892a9f3bbd8d088fdf7ee6bd3d2239f4c3a87ff056d1c1e551",
            "sha256:5f70bf18a086007016e948b04aed3b82103a36bea41755b6cddfaf10ace3c6ef",
            "sha256:5f70bf18a086007016e948b04aed3b82103a36bea41755b6cddfaf10ace3c6ef",
            "sha256:ace1103da0e0d1f1b5e1d249706ca0d3c784af5f05cfd261fce060c092495454",
            "sha256:433c91b5db05a4ebcd06a9db2616d346603f60d80815bf664edc494713795c0e",
            "sha256:d23ecbd588edd3b9883261096ca70cac9681e1f9a211cbb99b312dfbd580d9c2",
            "sha256:4ba3d939037a4f724ff2af0930715a8938256a7c6d2227ba4319a08d107de2a1",
            "sha256:c2809c7b3309081ae966bc2174fae7d44b42ac131c87ee4a384b2c0d9a4b918a",
            "sha256:29e0851ce55b432d0935f6cdc99c154261d33ed6c3d4a714ba4b37653bddd8e4",
            "sha256:5740fcc6a2deafaac161dbd092adeb83691c8ff19343ac4538ba79666bfed0f9",
            "sha256:e46f4d5f58c7e0c0c544a026783412f8bf41e779ca76701240b4e8a6c34e6a56"
        ]
    },
    "Metadata": {
        "LastTagTime": "2025-12-24T10:36:03.130720876+08:00"
    }
}

更多版本

ghcr.io/fccview/jotty:latest

linux/amd64 ghcr.io274.71MB2025-12-24 10:36
9