镜像构建历史
# 2025-09-04 00:05:12 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`."}]}}}}, {"id":"ghcr.io/devcontainers/features/rust:1","capAdd":["SYS_PTRACE"],"securityOpt":["seccomp=unconfined"],"customizations":{"vscode":{"extensions":["vadimcn.vscode-lldb","rust-lang.rust-analyzer","tamasfe.even-better-toml"],"settings":{"files.watcherExclude":{"**/target/**":true},"github.copilot.chat.codeGeneration.instructions":[{"text":"This dev container includes Rust, common Rust utilities, and needed dependencies pre-installed and available on the `PATH`, along with the Rust language extension for Rust development."}]}}}}, {"remoteUser":"vscode"} ]
# 2025-09-04 00:05:12 0.00B 指定运行容器时使用的用户
USER root
# 2025-09-04 00:05:12 0.00B 定义构建参数
ARG _DEV_CONTAINERS_IMAGE_USER=root
# 2025-09-04 00:05:12 587.34MB 执行命令并创建新的镜像层
RUN /bin/sh -c cp -ar /tmp/build-features-src/rust_2 /tmp/dev-container-features && chmod -R 0755 /tmp/dev-container-features/rust_2 && cd /tmp/dev-container-features/rust_2 && chmod +x ./devcontainer-features-install.sh && ./devcontainer-features-install.sh && rm -rf /tmp/dev-container-features/rust_2 # buildkit
# 2025-09-04 00:04:58 0.00B 设置环境变量 PATH
ENV PATH=/usr/local/cargo/bin:/usr/local/cargo/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
# 2025-09-04 00:04:58 0.00B 设置环境变量 RUSTUP_HOME
ENV RUSTUP_HOME=/usr/local/rustup
# 2025-09-04 00:04:58 0.00B 设置环境变量 CARGO_HOME
ENV CARGO_HOME=/usr/local/cargo
# 2025-09-04 00:04:58 146.16MB 执行命令并创建新的镜像层
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
# 2025-09-04 00:02:28 128.92MB 执行命令并创建新的镜像层
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
# 2025-09-04 00:02:08 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
# 2025-09-04 00:02:08 41.00B 复制新文件或目录到容器中
COPY /tmp/build-features/ /tmp/dev-container-features # buildkit
# 2025-09-04 00:02:08 0.00B 执行命令并创建新的镜像层
RUN /bin/sh -c mkdir -p /tmp/dev-container-features # buildkit
# 2025-09-04 00:02:08 0.00B 指定运行容器时使用的用户
USER root
# 2025-09-04 00:02:08 0.00B 添加元数据标签
LABEL dev.containers.timestamp=Wed, 03 Sep 2025 16:01:16 GMT
# 2025-09-04 00:02:08 0.00B 添加元数据标签
LABEL dev.containers.source=https://github.com/devcontainers/images
# 2025-09-04 00:02:08 0.00B 添加元数据标签
LABEL dev.containers.release=v0.4.18
# 2025-09-04 00:02:08 0.00B 添加元数据标签
LABEL dev.containers.variant=trixie
# 2025-09-04 00:02:08 0.00B 添加元数据标签
LABEL dev.containers.id=rust
# 2025-09-04 00:02:08 0.00B 添加元数据标签
LABEL version=2.0.2
# 2025-09-04 00:02:08 282.00B 复制新文件或目录到容器中
COPY meta.env /usr/local/etc/vscode-dev-containers/ # buildkit
# 2025-09-04 00:02:08 20.99KB 执行命令并创建新的镜像层
RUN /bin/sh -c /tmp/install-subversion.sh && rm -f /tmp/install-subversion.sh # buildkit
# 2025-09-04 00:02:08 1.40KB 执行命令并创建新的镜像层
RUN /bin/sh -c chmod +x /tmp/install-subversion.sh # buildkit
# 2025-09-04 00:02:08 1.40KB 复制新文件或目录到容器中
COPY ./scripts/install-subversion.sh /tmp/install-subversion.sh # buildkit
# 2025-09-04 00:02:08 22.14MB 执行命令并创建新的镜像层
RUN /bin/sh -c apt-get update && export DEBIAN_FRONTEND=noninteractive && apt-get purge -y imagemagick imagemagick-6-common # buildkit
# 2025-08-22 12:40:18 608.51MB 执行命令并创建新的镜像层
RUN /bin/sh -c set -eux; dpkgArch="$(dpkg --print-architecture)"; case "${dpkgArch##*-}" in amd64) rustArch='x86_64-unknown-linux-gnu'; rustupSha256='20a06e644b0d9bd2fbdbfd52d42540bdde820ea7df86e92e533c073da0cdd43c' ;; armhf) rustArch='armv7-unknown-linux-gnueabihf'; rustupSha256='3b8daab6cc3135f2cd4b12919559e6adaee73a2fbefb830fadf0405c20231d61' ;; arm64) rustArch='aarch64-unknown-linux-gnu'; rustupSha256='e3853c5a252fca15252d07cb23a1bdd9377a8c6f3efa01531109281ae47f841c' ;; i386) rustArch='i686-unknown-linux-gnu'; rustupSha256='a5db2c4b29d23e9b318b955dd0337d6b52e93933608469085c924e0d05b1df1f' ;; ppc64el) rustArch='powerpc64le-unknown-linux-gnu'; rustupSha256='acd89c42b47c93bd4266163a7b05d3f26287d5148413c0d47b2e8a7aa67c9dc0' ;; s390x) rustArch='s390x-unknown-linux-gnu'; rustupSha256='726b7fd5d8805e73eab4a024a2889f8859d5a44e36041abac0a2436a52d42572' ;; riscv64) rustArch='riscv64gc-unknown-linux-gnu'; rustupSha256='09e64cc1b7a3e99adaa15dd2d46a3aad9d44d71041e2a96100d165c98a8fd7a7' ;; *) echo >&2 "unsupported architecture: ${dpkgArch}"; exit 1 ;; esac; url="https://static.rust-lang.org/rustup/archive/1.28.2/${rustArch}/rustup-init"; wget "$url"; echo "${rustupSha256} *rustup-init" | sha256sum -c -; chmod +x rustup-init; ./rustup-init -y --no-modify-path --profile minimal --default-toolchain $RUST_VERSION --default-host ${rustArch}; rm rustup-init; chmod -R a+w $RUSTUP_HOME $CARGO_HOME; rustup --version; cargo --version; rustc --version; # buildkit
# 2025-08-22 12:40:18 0.00B 设置环境变量 RUSTUP_HOME CARGO_HOME PATH RUST_VERSION
ENV RUSTUP_HOME=/usr/local/rustup CARGO_HOME=/usr/local/cargo PATH=/usr/local/cargo/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin RUST_VERSION=1.89.0
# 2025-08-22 12:40:18 0.00B 添加元数据标签
LABEL org.opencontainers.image.source=https://github.com/rust-lang/docker-rust
# 2024-02-01 07:01:46 655.27MB 执行命令并创建新的镜像层
RUN /bin/sh -c set -ex; apt-get update; apt-get install -y --no-install-recommends autoconf automake bzip2 default-libmysqlclient-dev dpkg-dev file g++ gcc imagemagick libbz2-dev libc6-dev libcurl4-openssl-dev libdb-dev libevent-dev libffi-dev libgdbm-dev libglib2.0-dev libgmp-dev libjpeg-dev libkrb5-dev liblzma-dev libmagickcore-dev libmagickwand-dev libmaxminddb-dev libncurses5-dev libncursesw5-dev libpng-dev libpq-dev libreadline-dev libsqlite3-dev libssl-dev libtool libwebp-dev libxml2-dev libxslt-dev libyaml-dev make patch unzip xz-utils zlib1g-dev ; apt-get dist-clean # buildkit
# 2024-02-01 07:01:46 184.87MB 执行命令并创建新的镜像层
RUN /bin/sh -c set -eux; apt-get update; apt-get install -y --no-install-recommends git mercurial openssh-client subversion procps ; apt-get dist-clean # buildkit
# 2024-02-01 07:01:46 60.16MB 执行命令并创建新的镜像层
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
# 2024-02-01 07:01:46 119.85MB
# debian.sh --arch 'amd64' out/ 'trixie' '@1754870400'
镜像信息
{
"Id": "sha256:adf44e2ca90ea75b51aab4d77197b7e84f9e52cafcea2266dbf456d673a566f7",
"RepoTags": [
"mcr.microsoft.com/devcontainers/rust:2-1-trixie",
"swr.cn-north-4.myhuaweicloud.com/ddn-k8s/mcr.microsoft.com/devcontainers/rust:2-1-trixie"
],
"RepoDigests": [
"mcr.microsoft.com/devcontainers/rust@sha256:89214ba709cd952884c7355cf9b22e18d2cc080c50138440f4207a50a4bcbe0a",
"swr.cn-north-4.myhuaweicloud.com/ddn-k8s/mcr.microsoft.com/devcontainers/rust@sha256:6968ba060a03e9f4e5e254e3ecff392acad159c3357f5a0402c1569c9ddd992e"
],
"Parent": "",
"Comment": "buildkit.dockerfile.v0",
"Created": "2025-09-03T16:05:12.9812145Z",
"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/cargo/bin:/usr/local/cargo/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin",
"RUSTUP_HOME=/usr/local/rustup",
"CARGO_HOME=/usr/local/cargo",
"RUST_VERSION=1.89.0"
],
"Cmd": [
"bash"
],
"Image": "",
"Volumes": null,
"WorkingDir": "",
"Entrypoint": null,
"OnBuild": null,
"Labels": {
"dev.containers.id": "rust",
"dev.containers.release": "v0.4.18",
"dev.containers.source": "https://github.com/devcontainers/images",
"dev.containers.timestamp": "Wed, 03 Sep 2025 16:01:16 GMT",
"dev.containers.variant": "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`.\"}]}}}}, {\"id\":\"ghcr.io/devcontainers/features/rust:1\",\"capAdd\":[\"SYS_PTRACE\"],\"securityOpt\":[\"seccomp=unconfined\"],\"customizations\":{\"vscode\":{\"extensions\":[\"vadimcn.vscode-lldb\",\"rust-lang.rust-analyzer\",\"tamasfe.even-better-toml\"],\"settings\":{\"files.watcherExclude\":{\"**/target/**\":true},\"github.copilot.chat.codeGeneration.instructions\":[{\"text\":\"This dev container includes Rust, common Rust utilities, and needed dependencies pre-installed and available on the `PATH`, along with the Rust language extension for Rust development.\"}]}}}}, {\"remoteUser\":\"vscode\"} ]",
"org.opencontainers.image.source": "https://github.com/rust-lang/docker-rust",
"version": "2.0.2"
}
},
"Architecture": "amd64",
"Os": "linux",
"Size": 2513227862,
"GraphDriver": {
"Data": {
"LowerDir": "/var/lib/docker/overlay2/05bbdf18d4297e30b65adf35a560f7695a9b642caa436c98c3d9b1a3876ad78e/diff:/var/lib/docker/overlay2/9b805af482c72a34d3e98ccbd094cfffa81ef5b3b368a125c39fc2a65d899afa/diff:/var/lib/docker/overlay2/1212ccf5ebdfb81e12ea215e83697b3207010c8c445b65097dc04e89aa1c8825/diff:/var/lib/docker/overlay2/8c561a1260644ff31c2bd42da25fdba97d99c56afaade8c65b81f32e44291b4a/diff:/var/lib/docker/overlay2/29a86d090c4265e055a356aa90b2d8189ad230ab7fca4785a756de7c965ba1ae/diff:/var/lib/docker/overlay2/aaf4c14ed98d0e5b6c3f522a0644831e365d29f735f49595a48ccc0916997971/diff:/var/lib/docker/overlay2/a51b4d65ec732bd24f752d876d7f694071b805e93b98b6f0c02b98dcdafc77a3/diff:/var/lib/docker/overlay2/3b33549af92d99f5e6354b8662fa48e306d15a44eca36bf9769b3e1ad2b6f8cc/diff:/var/lib/docker/overlay2/d13eb6967ce2e628ab2eda9b5b2e1cc6daddab61bba2dc6f1d8592a14848cffd/diff:/var/lib/docker/overlay2/9de402d5347df83e83b772bac5687fd7d4e400a2be203170f71edbc37bc5fc01/diff:/var/lib/docker/overlay2/9bd4a16d8056ab17c831cd0d186c1d29d6a1f415c948e1c916876cd64e7fa348/diff:/var/lib/docker/overlay2/51098ee4100d9ef43cecaf978d93b66673e4168e1bb02d20553198d2b18879ae/diff:/var/lib/docker/overlay2/409f77936c182b2e7493f65b5b013e8a87f33b6260efab42e27b594cc67b661b/diff:/var/lib/docker/overlay2/9ea2d6b3560e018a6c75aa0348ee0bcc1488321f4f771654254041703b3238e0/diff:/var/lib/docker/overlay2/4a1146df8ebf8b322ce96920523350cfcc9db1ac700d3f924a7826738cabb63a/diff",
"MergedDir": "/var/lib/docker/overlay2/f193fbdc6bd31ced1bf2b01f814a6905c2080311167a67bc78490980f5827b70/merged",
"UpperDir": "/var/lib/docker/overlay2/f193fbdc6bd31ced1bf2b01f814a6905c2080311167a67bc78490980f5827b70/diff",
"WorkDir": "/var/lib/docker/overlay2/f193fbdc6bd31ced1bf2b01f814a6905c2080311167a67bc78490980f5827b70/work"
},
"Name": "overlay2"
},
"RootFS": {
"Type": "layers",
"Layers": [
"sha256:cb9eb84282d037ad85b02cf671ef6ca766c43bc957f88b048d16dd6deb6e68b8",
"sha256:7aabebb55065f28d3cdbb2992e7d23690d6bf2c2ba89db800ffd9c9dda4fa56f",
"sha256:fbb12b2180e78de1b5f766c6f7efc90c64bf45fbe703b053235feacb3d854e4f",
"sha256:b72242dc7fb054dbe447bb0d243cda9cbb6b45ea8077f9b269de5187beb98650",
"sha256:e86342166c8e339e527985eac79b98f6b197faece41a67ae3b818436bc145c24",
"sha256:ef7cf6a2bbcc12b6df6ebbf1f915533b608b235e7a1bf33845a3440212b148a0",
"sha256:b9bcdd8f69df361cc5a7680c5d171cc4e2072f167a85b8ae10a1dcf55091bbc8",
"sha256:df3596b11b940bd6a0b5ac2bf46b55d992b5483b81d8704c723136842cffc81c",
"sha256:67a71ec25ed5f976e7469d468cc715049e6663c7775e4b74a37eb1957f7f9cd5",
"sha256:6b681adb46143e68415a34f4d79b325ce8ec4acf620bea348aefa6745ecd4648",
"sha256:fb4b6591c6ab06d248df05b388f090ff1aa10957112f2436cafc39d772127d2c",
"sha256:68c3ad734bccb910315358c7e644c93ffeb756ddfb998924b9fab733b57f1dc4",
"sha256:d8ef6d03e75403097197821d33ef6c849ec327122ee0f62a9997b656539ded1d",
"sha256:7fb3501678ebdda3b1ea1c7e07b69cc86129a8a267a262b947c3b18ad779cdd1",
"sha256:73101811068954851939e272addd970b8bfdb2db63d0fd9fda71b5a22801a39b",
"sha256:880b59774236a916c98e36a60fdeae53b25eab8434e00c5ff222768fe67b893d"
]
},
"Metadata": {
"LastTagTime": "2025-09-18T10:51:58.936270307+08:00"
}
}