镜像构建历史
# 2026-03-11 23:58:37 0.00B 设置环境变量 JAVA_HOME
ENV JAVA_HOME=/usr/lib/jvm/msopenjdk-current
# 2026-03-11 23:58:37 0.00B 添加元数据标签
LABEL devcontainer.metadata=[ {"id":"ghcr.io/devcontainers/features/common-utils:2"}, {"id":"ghcr.io/devcontainers/features/git:1","customizations":{"vscode":{"settings":{"github.copilot.chat.codeGeneration.instructions":[{"text":"This dev container includes an up-to-date version of Git, built from source as needed, pre-installed and available on the `PATH`."}]}}}}, {"remoteUser":"vscode"}, {"id":"ghcr.io/devcontainers/features/git:1","customizations":{"vscode":{"settings":{"github.copilot.chat.codeGeneration.instructions":[{"text":"This dev container includes an up-to-date version of Git, built from source as needed, pre-installed and available on the `PATH`."}]}}}}, {"id":"ghcr.io/devcontainers/features/java:1","customizations":{"vscode":{"extensions":["vscjava.vscode-java-pack"],"settings":{"java.import.gradle.java.home":"/usr/local/sdkman/candidates/java/current","github.copilot.chat.codeGeneration.instructions":[{"text":"This dev container includes Java, SDKMAN! and needed dependencies pre-installed and available on the `PATH`, along with the Java language extension pack for Java development."}]}}}}, {"id":"ghcr.io/devcontainers/features/node:1","customizations":{"vscode":{"extensions":["dbaeumer.vscode-eslint"],"settings":{"github.copilot.chat.codeGeneration.instructions":[{"text":"This dev container includes `node`, `npm` and `eslint` pre-installed and available on the `PATH` for Node.js and JavaScript development."}]}}}}, {"customizations":{"vscode":{"settings":{},"extensions":["vscjava.vscode-java-pack"]}},"containerEnv":{"JAVA_HOME":"/usr/lib/jvm/msopenjdk-current"},"remoteUser":"vscode"} ]
# 2026-03-11 23:58:37 0.00B 指定运行容器时使用的用户
USER root
# 2026-03-11 23:58:37 0.00B 定义构建参数
ARG _DEV_CONTAINERS_IMAGE_USER=root
# 2026-03-11 23:58:37 20.60MB 执行命令并创建新的镜像层
RUN |1 TARGET_JAVA_VERSION=17 /bin/sh -c cp -ar /tmp/build-features-src/node_2 /tmp/dev-container-features && chmod -R 0755 /tmp/dev-container-features/node_2 && cd /tmp/dev-container-features/node_2 && chmod +x ./devcontainer-features-install.sh && ./devcontainer-features-install.sh && rm -rf /tmp/dev-container-features/node_2 # buildkit
# 2026-03-11 23:58:31 0.00B 设置环境变量 PATH
ENV PATH=/usr/local/share/nvm/current/bin:/usr/local/sdkman/bin:/usr/local/sdkman/candidates/java/current/bin:/usr/local/sdkman/candidates/gradle/current/bin:/usr/local/sdkman/candidates/maven/current/bin:/usr/local/sdkman/candidates/ant/current/bin:/usr/lib/jvm/msopenjdk-current/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
# 2026-03-11 23:58:31 0.00B 设置环境变量 NVM_SYMLINK_CURRENT
ENV NVM_SYMLINK_CURRENT=true
# 2026-03-11 23:58:31 0.00B 设置环境变量 NVM_DIR
ENV NVM_DIR=/usr/local/share/nvm
# 2026-03-11 23:58:31 6.11MB 执行命令并创建新的镜像层
RUN |1 TARGET_JAVA_VERSION=17 /bin/sh -c cp -ar /tmp/build-features-src/java_1 /tmp/dev-container-features && chmod -R 0755 /tmp/dev-container-features/java_1 && cd /tmp/dev-container-features/java_1 && chmod +x ./devcontainer-features-install.sh && ./devcontainer-features-install.sh && rm -rf /tmp/dev-container-features/java_1 # buildkit
# 2026-03-11 23:58:29 0.00B 设置环境变量 PATH
ENV PATH=/usr/local/sdkman/bin:/usr/local/sdkman/candidates/java/current/bin:/usr/local/sdkman/candidates/gradle/current/bin:/usr/local/sdkman/candidates/maven/current/bin:/usr/local/sdkman/candidates/ant/current/bin:/usr/lib/jvm/msopenjdk-current/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
# 2026-03-11 23:58:29 0.00B 设置环境变量 JAVA_HOME
ENV JAVA_HOME=/usr/local/sdkman/candidates/java/current
# 2026-03-11 23:58:29 0.00B 设置环境变量 SDKMAN_DIR
ENV SDKMAN_DIR=/usr/local/sdkman
# 2026-03-11 23:58:29 137.65MB 执行命令并创建新的镜像层
RUN |1 TARGET_JAVA_VERSION=17 /bin/sh -c cp -ar /tmp/build-features-src/git_0 /tmp/dev-container-features && chmod -R 0755 /tmp/dev-container-features/git_0 && cd /tmp/dev-container-features/git_0 && chmod +x ./devcontainer-features-install.sh && ./devcontainer-features-install.sh && rm -rf /tmp/dev-container-features/git_0 # buildkit
# 2026-03-11 23:55:54 99.00B 执行命令并创建新的镜像层
RUN |1 TARGET_JAVA_VERSION=17 /bin/sh -c echo "_CONTAINER_USER_HOME=$( (command -v getent >/dev/null 2>&1 && getent passwd 'root' || grep -E '^root|^[^:]*:[^:]*:root:' /etc/passwd || true) | cut -d: -f6)" >> /tmp/dev-container-features/devcontainer-features.builtin.env && echo "_REMOTE_USER_HOME=$( (command -v getent >/dev/null 2>&1 && getent passwd 'vscode' || grep -E '^vscode|^[^:]*:[^:]*:vscode:' /etc/passwd || true) | cut -d: -f6)" >> /tmp/dev-container-features/devcontainer-features.builtin.env # buildkit
# 2026-03-11 23:55:54 41.00B 复制新文件或目录到容器中
COPY /tmp/build-features/ /tmp/dev-container-features # buildkit
# 2026-03-11 23:55:54 0.00B 执行命令并创建新的镜像层
RUN |1 TARGET_JAVA_VERSION=17 /bin/sh -c mkdir -p /tmp/dev-container-features # buildkit
# 2026-03-11 23:55:54 0.00B 指定运行容器时使用的用户
USER root
# 2026-03-11 23:55:54 0.00B 添加元数据标签
LABEL dev.containers.timestamp=Wed, 11 Mar 2026 15:55:10 GMT
# 2026-03-11 23:55:54 0.00B 添加元数据标签
LABEL dev.containers.source=https://github.com/devcontainers/images
# 2026-03-11 23:55:54 0.00B 添加元数据标签
LABEL dev.containers.release=v0.4.25
# 2026-03-11 23:55:54 0.00B 添加元数据标签
LABEL dev.containers.variant=17-trixie
# 2026-03-11 23:55:54 0.00B 添加元数据标签
LABEL dev.containers.id=java
# 2026-03-11 23:55:54 0.00B 添加元数据标签
LABEL version=3.0.6
# 2026-03-11 23:55:54 285.00B 复制新文件或目录到容器中
COPY meta.env /usr/local/etc/vscode-dev-containers/ # buildkit
# 2026-03-11 23:55:54 331.73MB 执行命令并创建新的镜像层
RUN |1 TARGET_JAVA_VERSION=17 /bin/sh -c arch="$(dpkg --print-architecture)" && case "$arch" in "amd64") jdkUrl="https://aka.ms/download-jdk/microsoft-jdk-${TARGET_JAVA_VERSION}-linux-x64.tar.gz"; ;; "arm64") jdkUrl="https://aka.ms/download-jdk/microsoft-jdk-${TARGET_JAVA_VERSION}-linux-aarch64.tar.gz"; ;; *) echo >&2 "error: unsupported architecture: '$arch'"; exit 1 ;; esac && wget --progress=dot:giga -O msopenjdk.tar.gz "${jdkUrl}" && wget --progress=dot:giga -O sha256sum.txt "${jdkUrl}.sha256sum.txt" && sha256sumText=$(cat sha256sum.txt) && sha256=$(expr substr "${sha256sumText}" 1 64) && echo "${sha256} msopenjdk.tar.gz" | sha256sum --strict --check - && rm sha256sum.txt* && mkdir -p "$JAVA_HOME" && tar --extract --file msopenjdk.tar.gz --directory "$JAVA_HOME" --strip-components 1 --no-same-owner && rm msopenjdk.tar.gz* && ln -s ${JAVA_HOME} /docker-java-home && ln -s ${JAVA_HOME} /usr/local/openjdk-${TARGET_JAVA_VERSION} # buildkit
# 2026-03-11 23:55:54 0.00B 设置环境变量 LANG
ENV LANG=en_US.UTF-8
# 2026-03-11 23:55:54 0.00B 设置环境变量 PATH
ENV PATH=/usr/lib/jvm/msopenjdk-current/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
# 2026-03-11 23:55:54 0.00B 设置环境变量 JAVA_HOME
ENV JAVA_HOME=/usr/lib/jvm/msopenjdk-current
# 2026-03-11 23:55:54 0.00B 定义构建参数
ARG TARGET_JAVA_VERSION=17
# 2026-03-11 23:55:54 0.00B 指定运行容器时使用的用户
USER root
# 2026-03-09 22:23:10 0.00B 添加元数据标签
LABEL devcontainer.metadata=[ {"id":"ghcr.io/devcontainers/features/common-utils:2"}, {"id":"ghcr.io/devcontainers/features/git:1","customizations":{"vscode":{"settings":{"github.copilot.chat.codeGeneration.instructions":[{"text":"This dev container includes an up-to-date version of Git, built from source as needed, pre-installed and available on the `PATH`."}]}}}}, {"remoteUser":"vscode"} ]
# 2026-03-09 22:23:10 0.00B 指定运行容器时使用的用户
USER root
# 2026-03-09 22:23:10 0.00B 定义构建参数
ARG _DEV_CONTAINERS_IMAGE_USER=root
# 2026-03-09 22:23:10 476.82MB 执行命令并创建新的镜像层
RUN /bin/sh -c cp -ar /tmp/build-features-src/git_1 /tmp/dev-container-features && chmod -R 0755 /tmp/dev-container-features/git_1 && cd /tmp/dev-container-features/git_1 && chmod +x ./devcontainer-features-install.sh && ./devcontainer-features-install.sh && rm -rf /tmp/dev-container-features/git_1 # buildkit
# 2026-03-09 22:20:27 264.07MB 执行命令并创建新的镜像层
RUN /bin/sh -c cp -ar /tmp/build-features-src/common-utils_0 /tmp/dev-container-features && chmod -R 0755 /tmp/dev-container-features/common-utils_0 && cd /tmp/dev-container-features/common-utils_0 && chmod +x ./devcontainer-features-install.sh && ./devcontainer-features-install.sh && rm -rf /tmp/dev-container-features/common-utils_0 # buildkit
# 2026-03-09 22:20:11 87.00B 执行命令并创建新的镜像层
RUN /bin/sh -c echo "_CONTAINER_USER_HOME=$( (command -v getent >/dev/null 2>&1 && getent passwd 'root' || grep -E '^root|^[^:]*:[^:]*:root:' /etc/passwd || true) | cut -d: -f6)" >> /tmp/dev-container-features/devcontainer-features.builtin.env && echo "_REMOTE_USER_HOME=$( (command -v getent >/dev/null 2>&1 && getent passwd 'vscode' || grep -E '^vscode|^[^:]*:[^:]*:vscode:' /etc/passwd || true) | cut -d: -f6)" >> /tmp/dev-container-features/devcontainer-features.builtin.env # buildkit
# 2026-03-09 22:20:11 41.00B 复制新文件或目录到容器中
COPY /tmp/build-features/ /tmp/dev-container-features # buildkit
# 2026-03-09 22:20:11 0.00B 执行命令并创建新的镜像层
RUN /bin/sh -c mkdir -p /tmp/dev-container-features # buildkit
# 2026-03-09 22:20:11 0.00B 指定运行容器时使用的用户
USER root
# 2026-03-09 22:20:11 0.00B 添加元数据标签
LABEL dev.containers.timestamp=Mon, 09 Mar 2026 14:19:35 GMT
# 2026-03-09 22:20:11 0.00B 添加元数据标签
LABEL dev.containers.source=https://github.com/devcontainers/images
# 2026-03-09 22:20:11 0.00B 添加元数据标签
LABEL dev.containers.release=main
# 2026-03-09 22:20:11 0.00B 添加元数据标签
LABEL dev.containers.variant=trixie
# 2026-03-09 22:20:11 0.00B 添加元数据标签
LABEL dev.containers.id=base-debian
# 2026-03-09 22:20:11 0.00B 添加元数据标签
LABEL version=dev
# 2026-03-09 22:20:11 289.00B 复制新文件或目录到容器中
COPY meta.env /usr/local/etc/vscode-dev-containers/ # buildkit
# 2026-03-09 22:20:11 0.00B 执行命令并创建新的镜像层
RUN /bin/sh -c apt-get update && export DEBIAN_FRONTEND=noninteractive && apt-get upgrade -y && rm -rf /var/lib/apt/lists/* # buildkit
# 2026-02-25 03:20:02 60.17MB 执行命令并创建新的镜像层
RUN /bin/sh -c set -eux; apt-get update; apt-get install -y --no-install-recommends ca-certificates curl gnupg netbase sq wget ; apt-get dist-clean # buildkit
# 2026-02-23 08:00:00 119.86MB
# debian.sh --arch 'amd64' out/ 'trixie' '@1771804800'
镜像信息
{
"Id": "sha256:98c02e008f18121e53f378be152797d0bda10b3b4c836cd57f3ab2cb6df4c0ea",
"RepoTags": [
"mcr.microsoft.com/devcontainers/java:3.0.6-17-jdk-trixie",
"swr.cn-north-4.myhuaweicloud.com/ddn-k8s/mcr.microsoft.com/devcontainers/java:3.0.6-17-jdk-trixie"
],
"RepoDigests": [
"mcr.microsoft.com/devcontainers/java@sha256:429eeadf2b1e12ca5eb588ae6aa1e65c3e6a613fe447aee9f623270515b7a736",
"swr.cn-north-4.myhuaweicloud.com/ddn-k8s/mcr.microsoft.com/devcontainers/java@sha256:350c743e71529c5909cc4c7b8fb9c5cd461084734ffb2a95fde954fd3485cb2f"
],
"Parent": "",
"Comment": "buildkit.dockerfile.v0",
"Created": "2026-03-11T15:58:37.599727819Z",
"Container": "",
"ContainerConfig": null,
"DockerVersion": "",
"Author": "",
"Config": {
"Hostname": "",
"Domainname": "",
"User": "root",
"AttachStdin": false,
"AttachStdout": false,
"AttachStderr": false,
"Tty": false,
"OpenStdin": false,
"StdinOnce": false,
"Env": [
"PATH=/usr/local/share/nvm/current/bin:/usr/local/sdkman/bin:/usr/local/sdkman/candidates/java/current/bin:/usr/local/sdkman/candidates/gradle/current/bin:/usr/local/sdkman/candidates/maven/current/bin:/usr/local/sdkman/candidates/ant/current/bin:/usr/lib/jvm/msopenjdk-current/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin",
"JAVA_HOME=/usr/lib/jvm/msopenjdk-current",
"LANG=en_US.UTF-8",
"SDKMAN_DIR=/usr/local/sdkman",
"NVM_DIR=/usr/local/share/nvm",
"NVM_SYMLINK_CURRENT=true"
],
"Cmd": [
"bash"
],
"Image": "",
"Volumes": null,
"WorkingDir": "",
"Entrypoint": null,
"OnBuild": null,
"Labels": {
"dev.containers.id": "java",
"dev.containers.release": "v0.4.25",
"dev.containers.source": "https://github.com/devcontainers/images",
"dev.containers.timestamp": "Wed, 11 Mar 2026 15:55:10 GMT",
"dev.containers.variant": "17-trixie",
"devcontainer.metadata": "[ {\"id\":\"ghcr.io/devcontainers/features/common-utils:2\"}, {\"id\":\"ghcr.io/devcontainers/features/git:1\",\"customizations\":{\"vscode\":{\"settings\":{\"github.copilot.chat.codeGeneration.instructions\":[{\"text\":\"This dev container includes an up-to-date version of Git, built from source as needed, pre-installed and available on the `PATH`.\"}]}}}}, {\"remoteUser\":\"vscode\"}, {\"id\":\"ghcr.io/devcontainers/features/git:1\",\"customizations\":{\"vscode\":{\"settings\":{\"github.copilot.chat.codeGeneration.instructions\":[{\"text\":\"This dev container includes an up-to-date version of Git, built from source as needed, pre-installed and available on the `PATH`.\"}]}}}}, {\"id\":\"ghcr.io/devcontainers/features/java:1\",\"customizations\":{\"vscode\":{\"extensions\":[\"vscjava.vscode-java-pack\"],\"settings\":{\"java.import.gradle.java.home\":\"/usr/local/sdkman/candidates/java/current\",\"github.copilot.chat.codeGeneration.instructions\":[{\"text\":\"This dev container includes Java, SDKMAN! and needed dependencies pre-installed and available on the `PATH`, along with the Java language extension pack for Java development.\"}]}}}}, {\"id\":\"ghcr.io/devcontainers/features/node:1\",\"customizations\":{\"vscode\":{\"extensions\":[\"dbaeumer.vscode-eslint\"],\"settings\":{\"github.copilot.chat.codeGeneration.instructions\":[{\"text\":\"This dev container includes `node`, `npm` and `eslint` pre-installed and available on the `PATH` for Node.js and JavaScript development.\"}]}}}}, {\"customizations\":{\"vscode\":{\"settings\":{},\"extensions\":[\"vscjava.vscode-java-pack\"]}},\"containerEnv\":{\"JAVA_HOME\":\"/usr/lib/jvm/msopenjdk-current\"},\"remoteUser\":\"vscode\"} ]",
"version": "3.0.6"
}
},
"Architecture": "amd64",
"Os": "linux",
"Size": 1417007752,
"GraphDriver": {
"Data": {
"LowerDir": "/var/lib/docker/overlay2/dd4ac5ba56f30be4bc24d5ffdba4256a12157ff455c768c3c77691f80f6d5166/diff:/var/lib/docker/overlay2/eaeead07a8152a6322cf4d34adb4058bc16498e1e4027ebc64777628bafcb3c5/diff:/var/lib/docker/overlay2/a39c23eabd30f33c806abe109ef8e65397a53ed1a7d621b8fce57aba8ece37f5/diff:/var/lib/docker/overlay2/d12778e193a2bdb52f3be8a714d969d0f00326d33febbb93db6b7154ab5634dd/diff:/var/lib/docker/overlay2/948fd45595fbe752eaf4b253188a72c4ebab4da3711eb257e4f56c972f368b97/diff:/var/lib/docker/overlay2/614abccae8ec52615a373178c0e9d8319ee5fadb4a4f6d5db91d3297a1dcbef2/diff:/var/lib/docker/overlay2/07d3e6562b86707b7592fe8ec095048517e99d564fc8fce82bd6376912f66415/diff:/var/lib/docker/overlay2/3e8567f314a3507e778fe155dc4320cedbf4076d87c69385774b02181f84cc56/diff:/var/lib/docker/overlay2/0092532dedf8959e56ff55ac13dabf26f9b5311c5e1fd28403b8d527569d9e1d/diff:/var/lib/docker/overlay2/9660fbfe8d65dea5771e141bf0baae794948273547adf5f094bd9197bdf8b596/diff:/var/lib/docker/overlay2/b11b8095e69d0255dd2346d5a1380edb9a1694167c226a54b50472909b8a8ac0/diff:/var/lib/docker/overlay2/9b60bcb7165498c8a037174b373539dff70b4df635ad017805a5b295d7b1eb1f/diff:/var/lib/docker/overlay2/dcce8abb6dcae441994427e71ec0f6840f03dc4750f148875907d7c050d26188/diff:/var/lib/docker/overlay2/e6e98ab0a7117b2fef98b35951e6c6a20573828e0dfc9c43275a96ce97ead484/diff:/var/lib/docker/overlay2/b0a2b41492d7149120741b6386f479de94b6e121332cbce4776070cd7f0de406/diff:/var/lib/docker/overlay2/07b43fcfe4640c76ca69d311cbc2efde34c2751ef6a3b4f78b829677089cc95a/diff",
"MergedDir": "/var/lib/docker/overlay2/39ac8bb9bec10903f6bdc07f2844e964839d52137af23202016d769d65dd0325/merged",
"UpperDir": "/var/lib/docker/overlay2/39ac8bb9bec10903f6bdc07f2844e964839d52137af23202016d769d65dd0325/diff",
"WorkDir": "/var/lib/docker/overlay2/39ac8bb9bec10903f6bdc07f2844e964839d52137af23202016d769d65dd0325/work"
},
"Name": "overlay2"
},
"RootFS": {
"Type": "layers",
"Layers": [
"sha256:a541a5ccaa301e7fac682a49beced877c74cb57f094a6f0527b36d8a0e7e8ded",
"sha256:7fe06297fe28928ada6f9e5363902e4c740b4dcab4b00ca39466592ff1b1162f",
"sha256:b0bb5a26b790c4c9cc05239203f8f5c1c51073dcedb017afed750f0a6a7265ad",
"sha256:e943e59b43eacf8d84e179599750aed76935b8aaa8d12c96ac71144b0a3b93e0",
"sha256:2dfe9bee1014f7bc0510657bc8ee757cccfc85f283af12779c4aefb469c647a5",
"sha256:da13cec86d7ae26dc142f0717a14b80162d6abd1c0ae7254a41e20b3b98a4c76",
"sha256:d281853caf41767ece15c799935674e03bb2767c89701d17b3e9327e4dfdee71",
"sha256:5b299ea7166f21e49dcb9df233c640cc1fd9da991f8bf1d7ee79f72db3da1156",
"sha256:8eed4db497ffddf07fdc92ccd842cb1e7623660403f8cd6b06d8b2998c856c36",
"sha256:11504848bc5eaa731db874ea2ed872aa869be1f997b4c86b05149193271682ce",
"sha256:148b973c924fa1f7312e04fff8fed114e1aaf131fcb095cbc3dc4505d261c48e",
"sha256:5f70bf18a086007016e948b04aed3b82103a36bea41755b6cddfaf10ace3c6ef",
"sha256:20f1cd2c8bfcf59b6306edba8241da34c933523851996de7cd2a075326404145",
"sha256:72881942965af55809dc6b532def29fc835d081011efc02abf755e3ba624073f",
"sha256:e7f59574d00e178756f340ae23d06936f1b3a1fa2e39ba34f5bc13baa1841199",
"sha256:2d88254dfa29417db9965992858a4902afca0dad0b22ffe10fe205a6758621b4",
"sha256:f97d7ba7e451f373e2afd241508d56bce9dddd911740c7d5247451ba48a4a9fc"
]
},
"Metadata": {
"LastTagTime": "2026-03-21T10:48:26.855620846+08:00"
}
}