镜像构建历史
# 2025-10-23 09:15:41 0.00B 配置容器启动时运行的命令
ENTRYPOINT ["./entrypoint.sh"]
# 2025-10-23 09:15:41 0.00B 指定运行容器时使用的用户
USER node
# 2025-10-23 09:15:41 0.00B 设置环境变量 DASHBOARD_PORT
ENV DASHBOARD_PORT=8101
# 2025-10-23 09:15:41 0.00B 设置环境变量 BACKEND_PORT
ENV BACKEND_PORT=8102
# 2025-10-23 09:15:41 0.00B 设置环境变量 NODE_ENV
ENV NODE_ENV=production
# 2025-10-23 09:15:41 0.00B 设置工作目录为/app
WORKDIR /app
# 2025-10-23 09:15:41 4.23KB 执行命令并创建新的镜像层
RUN /bin/sh -c chmod +x entrypoint.sh # buildkit
# 2025-10-23 09:15:41 4.23KB 复制新文件或目录到容器中
COPY ./docker/server/entrypoint.sh . # buildkit
# 2025-10-23 09:15:41 1.07MB 复制新文件或目录到容器中
COPY --chown=node:node /app/apps/dashboard/public ./apps/dashboard/public # buildkit
# 2025-10-23 09:15:41 36.57MB 复制新文件或目录到容器中
COPY --chown=node:node /app/apps/dashboard/.next/static ./apps/dashboard/.next/static # buildkit
# 2025-10-23 09:15:41 109.08MB 复制新文件或目录到容器中
COPY --chown=node:node /app/apps/dashboard/.next/standalone ./ # buildkit
# 2025-10-23 09:15:40 9.86MB 复制新文件或目录到容器中
COPY --chown=node:node /app/apps/backend/dist ./apps/backend/dist # buildkit
# 2025-10-23 09:15:40 222.16KB 复制新文件或目录到容器中
COPY --chown=node:node /app/apps/backend/prisma ./apps/backend/prisma # buildkit
# 2025-10-23 09:15:40 2.69MB 复制新文件或目录到容器中
COPY --chown=node:node /app/apps/backend/.next/static ./apps/backend/.next/static # buildkit
# 2025-10-23 09:15:40 329.07MB 复制新文件或目录到容器中
COPY --chown=node:node /app/apps/backend/.next/standalone ./ # buildkit
# 2025-10-23 09:12:41 55.16MB 执行命令并创建新的镜像层
RUN /bin/sh -c apt-get update && apt-get upgrade -y && apt-get install -y openssl socat && rm -rf /var/lib/apt/lists # buildkit
# 2025-10-23 09:12:24 0.00B 设置工作目录为/app
WORKDIR /app
# 2024-09-18 06:47:56 0.00B 设置默认要执行的命令
CMD ["node"]
# 2024-09-18 06:47:56 0.00B 配置容器启动时运行的命令
ENTRYPOINT ["docker-entrypoint.sh"]
# 2024-09-18 06:47:56 388.00B 复制新文件或目录到容器中
COPY docker-entrypoint.sh /usr/local/bin/ # buildkit
# 2024-09-18 06:47:56 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 --keyserver keyserver.ubuntu.com --recv-keys "$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
# 2024-09-18 06:47:56 0.00B 设置环境变量 YARN_VERSION
ENV YARN_VERSION=1.22.22
# 2024-09-18 06:47:56 133.29MB 执行命令并创建新的镜像层
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';; i386) ARCH='x86' OPENSSL_ARCH='linux-elf';; *) 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 4ED778F539E3634C779C87C6D7062848A1AB005C 141F07595B7B3FFE74309A937405533BE57C7D57 74F12602B6F1C4E913FAA37AD3A89613643B6201 DD792F5973C6DE52C432CBDAC77ABFA00DDBF2B7 61FC681DFB92A079F1685E77973F295594EC4689 8FCCA13FEF1D0C2E91008E09770F7A9A5AE15600 C4F0DFFF4E8C1A8236409D08E73BC641CC11F4C8 890C08DB8579162FEE0DF9DB8BEAB4DFCF555EF4 C82FA3AE1CBEDC6BE46B9360C43CEC45C17AB93C 108F52B48DB57BB0CC439B2997B01419BD92F80A A363A499291CBBC940DD62E41F10027AF002F8B0 CC68F5A3106FF448322E48ED27F5E38D5B0A215F ; do gpg --batch --keyserver hkps://keys.openpgp.org --recv-keys "$key" || gpg --batch --keyserver keyserver.ubuntu.com --recv-keys "$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 # buildkit
# 2024-09-18 06:47:56 0.00B 设置环境变量 NODE_VERSION
ENV NODE_VERSION=22.9.0
# 2024-09-18 06:47:56 8.90KB 执行命令并创建新的镜像层
RUN /bin/sh -c groupadd --gid 1000 node && useradd --uid 1000 --gid node --shell /bin/bash --create-home node # buildkit
# 2024-09-18 06:47:56 0.00B
/bin/sh -c #(nop) CMD ["bash"]
# 2024-09-18 06:47:56 74.78MB
/bin/sh -c #(nop) ADD file:90b9dd8f12120e8b2cd3ece45fcbe8af67e40565e2032a40f64bd921c43e2ce7 in /
镜像信息
{
"Id": "sha256:91c8292f5f4ad3fcce7126a8de2598c98fff91a676fb5c9fb17e8583813a05a4",
"RepoTags": [
"stackauth/server:f20e74c",
"swr.cn-north-4.myhuaweicloud.com/ddn-k8s/docker.io/stackauth/server:f20e74c"
],
"RepoDigests": [
"swr.cn-north-4.myhuaweicloud.com/ddn-k8s/docker.io/stackauth/server@sha256:937f85978063e818968bd56fdb1edb3b38c6d0c288d4c445f43fd69ecae47fb5"
],
"Parent": "",
"Comment": "buildkit.dockerfile.v0",
"Created": "2025-10-23T01:15:41.814562828Z",
"Container": "",
"ContainerConfig": null,
"DockerVersion": "",
"Author": "",
"Config": {
"Hostname": "",
"Domainname": "",
"User": "node",
"AttachStdin": false,
"AttachStdout": false,
"AttachStderr": false,
"Tty": false,
"OpenStdin": false,
"StdinOnce": false,
"Env": [
"PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin",
"NODE_VERSION=22.9.0",
"YARN_VERSION=1.22.22",
"NODE_ENV=production",
"BACKEND_PORT=8102",
"DASHBOARD_PORT=8101"
],
"Cmd": null,
"ArgsEscaped": true,
"Image": "",
"Volumes": null,
"WorkingDir": "/app",
"Entrypoint": [
"./entrypoint.sh"
],
"OnBuild": null,
"Labels": {
"org.opencontainers.image.created": "2025-10-23T01:12:07.099Z",
"org.opencontainers.image.description": "Open-source Auth0/Clerk alternative",
"org.opencontainers.image.licenses": "NOASSERTION",
"org.opencontainers.image.revision": "f20e74c019fff2b32f1e28ebebb10712a23902e8",
"org.opencontainers.image.source": "https://github.com/stack-auth/stack-auth",
"org.opencontainers.image.title": "stack-auth",
"org.opencontainers.image.url": "https://github.com/stack-auth/stack-auth",
"org.opencontainers.image.version": "dev"
}
},
"Architecture": "amd64",
"Os": "linux",
"Size": 758975217,
"GraphDriver": {
"Data": {
"LowerDir": "/var/lib/docker/overlay2/13969adbe3c49adb54bc3a9d2d7bf88fd40edcff38a6c47c8624572568c55a01/diff:/var/lib/docker/overlay2/d0dda9c18d60d8aab342a632d27cad7a769042ac1e6e469b48de9219dae4602b/diff:/var/lib/docker/overlay2/c10909eb2facd49d1e9d1e186670e09cbddb167259660e267f6d949a94c56d1c/diff:/var/lib/docker/overlay2/41524370b81e0abcb497b949bbd2321b5a6ad36ac1f3545188a50961a3640a65/diff:/var/lib/docker/overlay2/90cbfcb5268c1010a3444be83aa691734235bf5d186944b43bd67ad10183d996/diff:/var/lib/docker/overlay2/a385d545048f8be4e6ae93ff3b70a6f70f87bd682ace695f8318b50ae2a00bc7/diff:/var/lib/docker/overlay2/3aff790f0123120669444b35612b5c12a59f959dda0bbfad1998fe8fcd8520f3/diff:/var/lib/docker/overlay2/8272d16ce7d8e0af3afbd0159723a6492ba606c1b74b7c03c4c0d5e385b915e6/diff:/var/lib/docker/overlay2/296f4fcf83f7bc9c24841b72c5d96818f988024ccbc9e13b390bc3d10cea10f5/diff:/var/lib/docker/overlay2/7decb7fd53553a6dd1e975610e472ba6d01ffadb056727d065010de15dd40a0a/diff:/var/lib/docker/overlay2/b5e906a8a54701ffc8fcf12d7dba7f26cdea908cb3938b53c053b7a1cc65c869/diff:/var/lib/docker/overlay2/71e0563b2e0e4fe3e3f04eda694b7904955963b54514864bf7b99f7c0ca2eb5e/diff:/var/lib/docker/overlay2/5857882ff342f0001a7be203423777dee85ff19e2ef77bfcae68cf1525f89022/diff:/var/lib/docker/overlay2/02e82f90b25892e8763c77266eb3d5ec2a2ea4e5aa4c9c1ac0f812770a4348a6/diff:/var/lib/docker/overlay2/d4b1280bfa327b7cf0b76e6ebc03e4734026281e2b7dceddcf4fc4fcc366cf4e/diff:/var/lib/docker/overlay2/640dc40711366eefdc38587353d7800897ec5b45fb0486472d1bbe1802e322be/diff",
"MergedDir": "/var/lib/docker/overlay2/c6b363328b99e380cec36ccfad6a261316b1629633b101eba962e7c14a05a12c/merged",
"UpperDir": "/var/lib/docker/overlay2/c6b363328b99e380cec36ccfad6a261316b1629633b101eba962e7c14a05a12c/diff",
"WorkDir": "/var/lib/docker/overlay2/c6b363328b99e380cec36ccfad6a261316b1629633b101eba962e7c14a05a12c/work"
},
"Name": "overlay2"
},
"RootFS": {
"Type": "layers",
"Layers": [
"sha256:98b5f35ea9d3eca6ed1881b5fe5d1e02024e1450822879e4c13bb48c9386d0ad",
"sha256:bc2f4850dab090b2ea3bf90164f39ffe337c7a09c44b7b4bc074a32570417548",
"sha256:2e448428406989577313bce8da498bfb6d6b25d1cc23dcfce5bbe094206c5baa",
"sha256:9574e0be4afa8c3833454769b97a40960154ebe3f3e97dcff58049c3eb55d498",
"sha256:912ef96bed9680cc234cf7bfadb3a4f0f2a6804eab5f45699b30ee2eee563977",
"sha256:759b1bb165aac713447d764d6a241e261f8232fc8e1f35ca69d0eaedb415c29c",
"sha256:892a957a11aa636deda13b168ed1abbd2e76a4311850ab1daa17bc35d66e91ea",
"sha256:0eac3f79b4dd32f96639cb6ec0aaa8c9f6976f3b7009a01022f1b59415298cc9",
"sha256:31892ff95f72ebe316da2d650d0d442f6619e5f9e03be377c555d91db16dffe0",
"sha256:b1f28c515128ce17806a83653e286433a02ace8bd028c43bc61768a7813f3293",
"sha256:1a0d62577e39573ab2ca8b40f8718b5d8dde045acf385f131114d5fe82ecea57",
"sha256:5fe9ca180b787d0a342091bcca40ed90291969d6562154870991ed721c380eca",
"sha256:23034d73b547e6afdf51cccb786e0612916554e6816ead059f853a7cd57f766e",
"sha256:69e9c34c695b98caee5cb4c7915f13be0606f375800e30f374f9fd0519459543",
"sha256:4fa01b130b99610fb0a54cd209d94485d9f3b5a84b04cbc83c752982436c695f",
"sha256:7c71082d86783e200c58bec975a47926ab6d31a18695d390866636f7f5f452e5",
"sha256:5f70bf18a086007016e948b04aed3b82103a36bea41755b6cddfaf10ace3c6ef"
]
},
"Metadata": {
"LastTagTime": "2025-10-24T08:04:54.063087358+08:00"
}
}