镜像构建历史
# 2026-07-07 19:29:09 0.00B 设置默认要执行的命令
CMD ["./scripts/start.sh"]
# 2026-07-07 19:29:09 22.48MB 复制新文件或目录到容器中
COPY . . # buildkit
# 2026-07-07 19:29:08 0.00B 设置工作目录为/app
WORKDIR /app
# 2026-07-07 19:29:08 24.30MB 复制新文件或目录到容器中
COPY /go/bin/pdfcpu /usr/local/bin/pdfcpu # buildkit
# 2026-07-07 19:29:08 235.10MB 复制新文件或目录到容器中
COPY /usr/local/bundle/ /usr/local/bundle # buildkit
# 2026-07-07 19:27:09 0.00B 设置环境变量 BUNDLE_WITHOUT
ENV BUNDLE_WITHOUT=development test
# 2026-07-07 19:27:09 0.00B 设置环境变量 BUNDLE_WITH
ENV BUNDLE_WITH=
# 2026-07-07 19:27:09 0.00B 设置环境变量 GOCARDLESS_CLIENT_SECRET
ENV GOCARDLESS_CLIENT_SECRET=g7C5vA_ccCv65GUU68svhyIbppXE15EC1JDg9ci0hHu09-r3ReUCDXjGipa6TTpS
# 2026-07-07 19:27:09 0.00B 设置环境变量 GOCARDLESS_CLIENT_ID
ENV GOCARDLESS_CLIENT_ID=OJWZfIzwIwf5Ww6W4vhE_njHXYifFbfNcwEqQDW9_MBX5fbt-Vq6DDD5NfE4kHz0
# 2026-07-07 19:27:09 0.00B 设置环境变量 SEGMENT_WRITE_KEY
ENV SEGMENT_WRITE_KEY=bGgCpDWlRwahlEgjcAkGV7TItow7WBD8
# 2026-07-07 19:27:09 0.00B 定义构建参数
ARG GOCARDLESS_CLIENT_SECRET=g7C5vA_ccCv65GUU68svhyIbppXE15EC1JDg9ci0hHu09-r3ReUCDXjGipa6TTpS
# 2026-07-07 19:27:09 0.00B 定义构建参数
ARG GOCARDLESS_CLIENT_ID=OJWZfIzwIwf5Ww6W4vhE_njHXYifFbfNcwEqQDW9_MBX5fbt-Vq6DDD5NfE4kHz0
# 2026-07-07 19:27:09 0.00B 定义构建参数
ARG SEGMENT_WRITE_KEY=bGgCpDWlRwahlEgjcAkGV7TItow7WBD8
# 2026-07-07 19:27:09 0.00B 设置环境变量 LD_PRELOAD
ENV LD_PRELOAD=libjemalloc.so.2
# 2026-07-07 19:27:09 134.07MB 执行命令并创建新的镜像层
RUN |1 BUNDLE_WITH= /bin/sh -c apt install git libpq-dev curl postgresql-client libjemalloc2 -y # buildkit
# 2026-07-07 19:26:59 52.03MB 执行命令并创建新的镜像层
RUN |1 BUNDLE_WITH= /bin/sh -c apt update && apt upgrade -y # buildkit
# 2026-07-07 19:26:59 0.00B 定义构建参数
ARG BUNDLE_WITH
# 2026-04-07 10:30:49 0.00B 设置默认要执行的命令
CMD ["irb"]
# 2026-04-07 10:30:49 0.00B 执行命令并创建新的镜像层
RUN /bin/sh -c set -eux; mkdir "$GEM_HOME"; chmod 1777 "$GEM_HOME" # buildkit
# 2026-04-07 10:30:49 0.00B 设置环境变量 PATH
ENV PATH=/usr/local/bundle/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
# 2026-04-07 10:30:49 0.00B 设置环境变量 BUNDLE_SILENCE_ROOT_WARNING BUNDLE_APP_CONFIG
ENV BUNDLE_SILENCE_ROOT_WARNING=1 BUNDLE_APP_CONFIG=/usr/local/bundle
# 2026-04-07 10:30:49 0.00B 设置环境变量 GEM_HOME
ENV GEM_HOME=/usr/local/bundle
# 2026-04-07 10:30:49 90.52MB 执行命令并创建新的镜像层
RUN /bin/sh -c set -eux; savedAptMark="$(apt-mark showmanual)"; apt-get update; apt-get install -y --no-install-recommends dpkg-dev libgdbm-dev ruby autoconf bzip2 g++ gcc libbz2-dev libffi-dev libgdbm-compat-dev libglib2.0-dev libgmp-dev libncurses-dev libssl-dev libxml2-dev libxslt-dev libyaml-dev make wget xz-utils zlib1g-dev ; rustArch=; dpkgArch="$(dpkg --print-architecture)"; case "$dpkgArch" in 'amd64') rustArch='x86_64-unknown-linux-gnu'; rustupUrl='https://static.rust-lang.org/rustup/archive/1.28.2/x86_64-unknown-linux-gnu/rustup-init'; rustupSha256='20a06e644b0d9bd2fbdbfd52d42540bdde820ea7df86e92e533c073da0cdd43c' ;; 'arm64') rustArch='aarch64-unknown-linux-gnu'; rustupUrl='https://static.rust-lang.org/rustup/archive/1.28.2/aarch64-unknown-linux-gnu/rustup-init'; rustupSha256='e3853c5a252fca15252d07cb23a1bdd9377a8c6f3efa01531109281ae47f841c' ;; esac; if [ -n "$rustArch" ]; then mkdir -p /tmp/rust; wget -O /tmp/rust/rustup-init "$rustupUrl"; echo "$rustupSha256 */tmp/rust/rustup-init" | sha256sum --check --strict; chmod +x /tmp/rust/rustup-init; export RUSTUP_HOME='/tmp/rust/rustup' CARGO_HOME='/tmp/rust/cargo'; export PATH="$CARGO_HOME/bin:$PATH"; /tmp/rust/rustup-init -y --no-modify-path --profile minimal --default-toolchain '1.91.1' --default-host "$rustArch"; rustc --version; cargo --version; fi; wget -O ruby.tar.xz "$RUBY_DOWNLOAD_URL"; echo "$RUBY_DOWNLOAD_SHA256 *ruby.tar.xz" | sha256sum --check --strict; mkdir -p /usr/src/ruby; tar -xJf ruby.tar.xz -C /usr/src/ruby --strip-components=1; rm ruby.tar.xz; cd /usr/src/ruby; autoconf; gnuArch="$(dpkg-architecture --query DEB_BUILD_GNU_TYPE)"; ./configure --build="$gnuArch" --disable-install-doc --enable-shared ${rustArch:+--enable-yjit} ${rustArch:+--enable-zjit} ; make -j "$(nproc)"; make install; rm -rf /tmp/rust; apt-mark auto '.*' > /dev/null; apt-mark manual $savedAptMark > /dev/null; find /usr/local -type f -executable -not \( -name '*tkinter*' \) -exec ldd '{}' ';' | awk '/=>/ { so = $(NF-1); if (index(so, "/usr/local/") == 1) { next }; gsub("^/(usr/)?", "", so); printf "*%s\n", so }' | sort -u | xargs -r dpkg-query --search | awk 'sub(":$", "", $1) { print $1 }' | sort -u | xargs -r apt-mark manual ; apt-get purge -y --auto-remove -o APT::AutoRemove::RecommendsImportant=false; apt-get dist-clean; cd /; rm -r /usr/src/ruby; if dpkg -l | grep -i ruby; then exit 1; fi; [ "$(command -v ruby)" = '/usr/local/bin/ruby' ]; ruby --version; gem --version; bundle --version # buildkit
# 2026-04-07 10:30:49 0.00B 设置环境变量 RUBY_DOWNLOAD_SHA256
ENV RUBY_DOWNLOAD_SHA256=4618db85bb9ec04d8152d0099db488694a3d3c4f52106625e4ad547f1318db87
# 2026-04-07 10:30:49 0.00B 设置环境变量 RUBY_DOWNLOAD_URL
ENV RUBY_DOWNLOAD_URL=https://cache.ruby-lang.org/pub/ruby/4.0/ruby-4.0.2.tar.xz
# 2026-04-07 10:30:49 0.00B 设置环境变量 RUBY_VERSION
ENV RUBY_VERSION=4.0.2
# 2026-04-07 10:30:49 0.00B 设置环境变量 LANG
ENV LANG=C.UTF-8
# 2026-04-07 10:28:17 19.00B 执行命令并创建新的镜像层
RUN /bin/sh -c set -eux; mkdir -p /usr/local/etc; echo 'gem: --no-document' >> /usr/local/etc/gemrc # buildkit
# 2026-04-07 10:28:17 3.78MB 执行命令并创建新的镜像层
RUN /bin/sh -c set -eux; apt-get update; apt-get install -y --no-install-recommends ca-certificates ; apt-get dist-clean # buildkit
# 2026-04-06 08:00:00 78.61MB
# debian.sh --arch 'amd64' out/ 'trixie' '@1775433600'
镜像信息
{
"Id": "sha256:7e82a22e68052922945a38a6ec6f5600dfd911497629fa5575db34fc76fa1d7d",
"RepoTags": [
"getlago/api:v1.50.0",
"swr.cn-north-4.myhuaweicloud.com/ddn-k8s/docker.io/getlago/api:v1.50.0"
],
"RepoDigests": [
"getlago/api@sha256:8f0c7997c4fb1a891f5cfcb364849250ca3b659bfe2b7ef7e82be62c7bfc83b8",
"swr.cn-north-4.myhuaweicloud.com/ddn-k8s/docker.io/getlago/api@sha256:3159e9a195441c7049d0bd07b31983e2d6575238a7199dd8c339b49b5ee5b63a"
],
"Parent": "",
"Comment": "buildkit.dockerfile.v0",
"Created": "2026-07-07T11:29:09.149134929Z",
"Container": "",
"ContainerConfig": null,
"DockerVersion": "",
"Author": "",
"Config": {
"Hostname": "",
"Domainname": "",
"User": "",
"AttachStdin": false,
"AttachStdout": false,
"AttachStderr": false,
"Tty": false,
"OpenStdin": false,
"StdinOnce": false,
"Env": [
"PATH=/usr/local/bundle/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin",
"LANG=C.UTF-8",
"RUBY_VERSION=4.0.2",
"RUBY_DOWNLOAD_URL=https://cache.ruby-lang.org/pub/ruby/4.0/ruby-4.0.2.tar.xz",
"RUBY_DOWNLOAD_SHA256=4618db85bb9ec04d8152d0099db488694a3d3c4f52106625e4ad547f1318db87",
"GEM_HOME=/usr/local/bundle",
"BUNDLE_SILENCE_ROOT_WARNING=1",
"BUNDLE_APP_CONFIG=/usr/local/bundle",
"LD_PRELOAD=libjemalloc.so.2",
"SEGMENT_WRITE_KEY=bGgCpDWlRwahlEgjcAkGV7TItow7WBD8",
"GOCARDLESS_CLIENT_ID=OJWZfIzwIwf5Ww6W4vhE_njHXYifFbfNcwEqQDW9_MBX5fbt-Vq6DDD5NfE4kHz0",
"GOCARDLESS_CLIENT_SECRET=g7C5vA_ccCv65GUU68svhyIbppXE15EC1JDg9ci0hHu09-r3ReUCDXjGipa6TTpS",
"BUNDLE_WITH=",
"BUNDLE_WITHOUT=development test"
],
"Cmd": [
"./scripts/start.sh"
],
"ArgsEscaped": true,
"Image": "",
"Volumes": null,
"WorkingDir": "/app",
"Entrypoint": null,
"OnBuild": null,
"Labels": {
"org.opencontainers.image.created": "2026-07-07T11:26:39.104Z",
"org.opencontainers.image.description": "Open Source Metering and Usage Based Billing",
"org.opencontainers.image.licenses": "AGPL-3.0",
"org.opencontainers.image.revision": "32efd35931cca340050c2623d811b14e75d78de9",
"org.opencontainers.image.source": "https://github.com/getlago/lago-api",
"org.opencontainers.image.title": "lago-api",
"org.opencontainers.image.url": "https://github.com/getlago/lago-api",
"org.opencontainers.image.version": "v1.50.0"
}
},
"Architecture": "amd64",
"Os": "linux",
"Size": 640905071,
"GraphDriver": {
"Data": {
"LowerDir": "/var/lib/docker/overlay2/243a7289374de517df239fa64cf22569e024938e929027ce9550790516f17771/diff:/var/lib/docker/overlay2/bc247911fce4333f12f5f757a51e4eb7e2a3ecc8f88872b3b32cca0233d9b4e3/diff:/var/lib/docker/overlay2/76c92ffddcd03909f9af45a6d67540627c58d2b04cdbf303b249afda9272a645/diff:/var/lib/docker/overlay2/c16358f09f9a2c8857086a67966a4599e4329e557673e10fe7158b718513e195/diff:/var/lib/docker/overlay2/d283d904bfb0d21ecc30adcca595ab777deb71073ef2befa52bb365fbf648d32/diff:/var/lib/docker/overlay2/26b887f14726bd0fb22acc00d09d9253c5db4c5217e0fb73d3882f3c028505ec/diff:/var/lib/docker/overlay2/b57d3ed0ba1a7c6e9a48e3f2d4d8748c739beaeafc3b817a9ff6cb947c333e67/diff:/var/lib/docker/overlay2/ce92b5fdad673ac97e3652a83947950d219e55bb5cd3e316e8374df65c4a303f/diff:/var/lib/docker/overlay2/dfdf9eab6966142356f529a6963a13e6c4cf46a87f69e84422dd25f9d4e36b81/diff:/var/lib/docker/overlay2/2b6392c38b1028a3a87c59074014246d27b3f39e3b413f1aa56c46247b38ac40/diff",
"MergedDir": "/var/lib/docker/overlay2/8c1942f4e0c0db725b3b1b55a9b61617452ddcc804ca82ca41a942a4d9a0fcea/merged",
"UpperDir": "/var/lib/docker/overlay2/8c1942f4e0c0db725b3b1b55a9b61617452ddcc804ca82ca41a942a4d9a0fcea/diff",
"WorkDir": "/var/lib/docker/overlay2/8c1942f4e0c0db725b3b1b55a9b61617452ddcc804ca82ca41a942a4d9a0fcea/work"
},
"Name": "overlay2"
},
"RootFS": {
"Type": "layers",
"Layers": [
"sha256:60e70dddd9ea3b1c77c62fe78be1d9f485706b6fe6052c3d88612bd8f56acd67",
"sha256:8187b9a8c4b423adb4e96e1337b795baf172dc42004513e24393ec1f8b307c17",
"sha256:13ff9cfe9c5cd15174f19e354caf664fe69834fe6afbeed7e2efa96dc44ef07c",
"sha256:33fba7cb0c44491d1a331e13f6e630f6d06b7096f24037dd4dbe0728bb8eafc9",
"sha256:a8edfa5f4ede52d45564c80db084644ffbc624c8652e50eb68c8792a0c9a7d9f",
"sha256:1e0630831641e4b9b346b80b736bbde8779e4843f4c1732b1e6e7ac5f4408d4f",
"sha256:b6ba0aed6d261fd72c55878936f59c8ed6c31a70f69419228f1e635373f0f63c",
"sha256:7dbea0cbe410371d73e75685e76cdf5550f1d20176a9a4f160815ba823b59e3e",
"sha256:dd9204c953cd73bbd42dcd8070ca6339d56b3a9b360f08ff534079ec749ec486",
"sha256:85c7abc3062179b25a9eb09b617af24a7c978f75169e98424b7a341d71bcc6d1",
"sha256:18c4d608cb6a0dbcda0cc584b1917e58e3e893009a77058664c9e7e9a17bffda"
]
},
"Metadata": {
"LastTagTime": "2026-07-24T01:20:34.105899098+08:00"
}
}