镜像构建历史
# 2024-10-03 10:27:48 0.00B 设置默认要执行的命令
CMD ["sh" "-c" "pip install --no-index --find-links=/packages torch==2.4.0 torchvision==0.19.0 torchaudio==2.4.0 && pip install --no-index --find-links=/packages torch_geometric && pip install --no-index --find-links=/packages pyg_lib torch_scatter torch_sparse torch_cluster torch_spline_conv && pip install --no-index --find-links=/packages omicverse && pip install --no-index --find-links=/packages dgl && pip install --no-index --find-links=/packages tangram pot tangram cvxpy libpysal gudhi openai patsy combat pydeseq2==0.4.1 pymde opencv-python scikit-image && pip install --no-index --find-links=/packages harmonypy intervaltree fbpca mofax metatime s-gd2 mellon scvelo cellrank && pip install --no-index --find-links=/packages numpy==1.23.5 llvmlite==0.41.1 numba==0.58.1 && jupyter lab --ip=0.0.0.0 --port=8899 --no-browser --allow-root"]
# 2024-10-03 10:27:48 0.00B 声明容器运行时监听的端口
EXPOSE map[8899/tcp:{}]
# 2024-10-03 10:27:48 41.16KB 执行命令并创建新的镜像层
RUN /bin/sh -c echo "c.LabApp.default_url = '/lab?reset'" >> /root/.jupyter/jupyter_lab_config.py # buildkit
# 2024-10-03 10:27:45 306.09KB 执行命令并创建新的镜像层
RUN /bin/sh -c jupyter lab --generate-config && echo "c.ServerApp.token = ''" >> /root/.jupyter/jupyter_lab_config.py && echo "c.ServerApp.password = ''" >> /root/.jupyter/jupyter_lab_config.py # buildkit
# 2024-10-03 10:27:40 32.00B 执行命令并创建新的镜像层
RUN /bin/sh -c mkdir -p ~/.jupyter/lab/user-settings/@jupyterlab/apputils-extension/ && echo '{ "theme": "Simpledark Fresh" }' > ~/.jupyter/lab/user-settings/@jupyterlab/apputils-extension/themes.jupyterlab-settings # buildkit
# 2024-10-03 10:27:37 149.95MB 执行命令并创建新的镜像层
RUN /bin/sh -c pip install --no-index --find-links=/packages jupyterlab jupyterlab-simpledark # buildkit
# 2024-10-03 10:26:41 347.52MB 执行命令并创建新的镜像层
RUN /bin/sh -c apt-get update && apt-get install -y build-essential && apt-get clean && rm -rf /var/lib/apt/lists/* /tmp/* /var/tmp/* # buildkit
# 2024-10-03 10:22:56 1.41GB 复制新文件或目录到容器中
COPY packages /packages # buildkit
# 2024-10-02 19:30:43 0.00B 设置工作目录为/app
WORKDIR /app
# 2024-09-10 01:16:05 0.00B 设置默认要执行的命令
CMD ["python3"]
# 2024-09-10 01:16:05 36.00B 执行命令并创建新的镜像层
RUN /bin/sh -c set -eux; for src in idle3 pip3 pydoc3 python3 python3-config; do dst="$(echo "$src" | tr -d 3)"; [ -s "/usr/local/bin/$src" ]; [ ! -e "/usr/local/bin/$dst" ]; ln -svT "$src" "/usr/local/bin/$dst"; done # buildkit
# 2024-09-10 01:16:05 42.96MB 执行命令并创建新的镜像层
RUN /bin/sh -c set -eux; savedAptMark="$(apt-mark showmanual)"; apt-get update; apt-get install -y --no-install-recommends dpkg-dev gcc gnupg libbluetooth-dev libbz2-dev libc6-dev libdb-dev libexpat1-dev libffi-dev libgdbm-dev liblzma-dev libncursesw5-dev libreadline-dev libsqlite3-dev libssl-dev make tk-dev uuid-dev wget xz-utils zlib1g-dev ; wget -O python.tar.xz "https://www.python.org/ftp/python/${PYTHON_VERSION%%[a-z]*}/Python-$PYTHON_VERSION.tar.xz"; wget -O python.tar.xz.asc "https://www.python.org/ftp/python/${PYTHON_VERSION%%[a-z]*}/Python-$PYTHON_VERSION.tar.xz.asc"; GNUPGHOME="$(mktemp -d)"; export GNUPGHOME; gpg --batch --keyserver hkps://keys.openpgp.org --recv-keys "$GPG_KEY"; gpg --batch --verify python.tar.xz.asc python.tar.xz; gpgconf --kill all; rm -rf "$GNUPGHOME" python.tar.xz.asc; mkdir -p /usr/src/python; tar --extract --directory /usr/src/python --strip-components=1 --file python.tar.xz; rm python.tar.xz; cd /usr/src/python; gnuArch="$(dpkg-architecture --query DEB_BUILD_GNU_TYPE)"; ./configure --build="$gnuArch" --enable-loadable-sqlite-extensions --enable-optimizations --enable-option-checking=fatal --enable-shared --with-lto --with-system-expat --with-ensurepip ; nproc="$(nproc)"; EXTRA_CFLAGS="$(dpkg-buildflags --get CFLAGS)"; LDFLAGS="$(dpkg-buildflags --get LDFLAGS)"; LDFLAGS="${LDFLAGS:--Wl},--strip-all"; make -j "$nproc" "EXTRA_CFLAGS=${EXTRA_CFLAGS:-}" "LDFLAGS=${LDFLAGS:-}" "PROFILE_TASK=${PROFILE_TASK:-}" ; rm python; make -j "$nproc" "EXTRA_CFLAGS=${EXTRA_CFLAGS:-}" "LDFLAGS=${LDFLAGS:--Wl},-rpath='\$\$ORIGIN/../lib'" "PROFILE_TASK=${PROFILE_TASK:-}" python ; make install; cd /; rm -rf /usr/src/python; find /usr/local -depth \( \( -type d -a \( -name test -o -name tests -o -name idle_test \) \) -o \( -type f -a \( -name '*.pyc' -o -name '*.pyo' -o -name 'libpython*.a' \) \) \) -exec rm -rf '{}' + ; ldconfig; apt-mark auto '.*' > /dev/null; apt-mark manual $savedAptMark; 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 | cut -d: -f1 | sort -u | xargs -r apt-mark manual ; apt-get purge -y --auto-remove -o APT::AutoRemove::RecommendsImportant=false; rm -rf /var/lib/apt/lists/*; export PYTHONDONTWRITEBYTECODE=1; python3 --version; pip3 install --disable-pip-version-check --no-cache-dir --no-compile 'setuptools==65.5.1' wheel ; pip3 --version # buildkit
# 2024-09-10 01:16:05 0.00B 设置环境变量 PYTHON_VERSION
ENV PYTHON_VERSION=3.10.15
# 2024-09-10 01:16:05 0.00B 设置环境变量 GPG_KEY
ENV GPG_KEY=A035C8C19219BA821ECEA86B64E628F8D684696D
# 2024-09-10 01:16:05 9.24MB 执行命令并创建新的镜像层
RUN /bin/sh -c set -eux; apt-get update; apt-get install -y --no-install-recommends ca-certificates netbase tzdata ; rm -rf /var/lib/apt/lists/* # buildkit
# 2024-09-10 01:16:05 0.00B 设置环境变量 LANG
ENV LANG=C.UTF-8
# 2024-09-10 01:16:05 0.00B 设置环境变量 PATH
ENV PATH=/usr/local/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
# 2024-09-10 01:16:05 0.00B
/bin/sh -c #(nop) CMD ["bash"]
# 2024-09-10 01:16:05 74.78MB
/bin/sh -c #(nop) ADD file:a9a95cfab16803be03e59ade41622ef5061cf90f2d034304fe4ac1ee9ff30389 in /
镜像信息
{
"Id": "sha256:76882b9405f7343461f82424696ff564d040c8347e784af3086d0a8269a82730",
"RepoTags": [
"starlitnightly/omicverse:py310_cpu_latest",
"swr.cn-north-4.myhuaweicloud.com/ddn-k8s/docker.io/starlitnightly/omicverse:py310_cpu_latest"
],
"RepoDigests": [
"starlitnightly/omicverse@sha256:ffa2a155024e73982a0f02dabd14e191fa1164632045f090a465e39adf4553c9",
"swr.cn-north-4.myhuaweicloud.com/ddn-k8s/docker.io/starlitnightly/omicverse@sha256:ffa2a155024e73982a0f02dabd14e191fa1164632045f090a465e39adf4553c9"
],
"Parent": "",
"Comment": "buildkit.dockerfile.v0",
"Created": "2024-10-03T10:27:48.037599695+08:00",
"Container": "",
"ContainerConfig": null,
"DockerVersion": "",
"Author": "",
"Config": {
"Hostname": "",
"Domainname": "",
"User": "",
"AttachStdin": false,
"AttachStdout": false,
"AttachStderr": false,
"ExposedPorts": {
"8899/tcp": {}
},
"Tty": false,
"OpenStdin": false,
"StdinOnce": false,
"Env": [
"PATH=/usr/local/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin",
"LANG=C.UTF-8",
"GPG_KEY=A035C8C19219BA821ECEA86B64E628F8D684696D",
"PYTHON_VERSION=3.10.15"
],
"Cmd": [
"sh",
"-c",
"pip install --no-index --find-links=/packages torch==2.4.0 torchvision==0.19.0 torchaudio==2.4.0 \u0026\u0026 pip install --no-index --find-links=/packages torch_geometric \u0026\u0026 pip install --no-index --find-links=/packages pyg_lib torch_scatter torch_sparse torch_cluster torch_spline_conv \u0026\u0026 pip install --no-index --find-links=/packages omicverse \u0026\u0026 pip install --no-index --find-links=/packages dgl \u0026\u0026 pip install --no-index --find-links=/packages tangram pot tangram cvxpy libpysal gudhi openai patsy combat pydeseq2==0.4.1 pymde opencv-python scikit-image \u0026\u0026 pip install --no-index --find-links=/packages harmonypy intervaltree fbpca mofax metatime s-gd2 mellon scvelo cellrank \u0026\u0026 pip install --no-index --find-links=/packages numpy==1.23.5 llvmlite==0.41.1 numba==0.58.1 \u0026\u0026 jupyter lab --ip=0.0.0.0 --port=8899 --no-browser --allow-root"
],
"ArgsEscaped": true,
"Image": "",
"Volumes": null,
"WorkingDir": "/app",
"Entrypoint": null,
"OnBuild": null,
"Labels": null
},
"Architecture": "amd64",
"Os": "linux",
"Size": 2035104953,
"GraphDriver": {
"Data": {
"LowerDir": "/var/lib/docker/overlay2/6ac9fe4a8b3462bfd0bce7254bb155fb0732804fe2ecceb252e19989085910d4/diff:/var/lib/docker/overlay2/1210b4c8b8ac81063c66736fe9ba266fff10b59e08bd3a728fd75ef93fb3bda2/diff:/var/lib/docker/overlay2/cd495fbe5c27ac3b2868e9ce84c81efaf368a33bf54b96809cdcf64135cac4c1/diff:/var/lib/docker/overlay2/d34faf91f539e95b2cef801ef2cfb2b872994be231585f53ab6c3ba2f61121c2/diff:/var/lib/docker/overlay2/ffc0b308996d6bfc99fac9fc1493b27d2cfce8b34480b4c3a9345c5f993cb102/diff:/var/lib/docker/overlay2/2c37a1185da828e262ce5c27c8818e3320a25d5cfaa5273727a3eecff8d2cd2c/diff:/var/lib/docker/overlay2/e49db4f44bf50b252028a29e05c4062263c2301d32170e0f7e69732dc7275a67/diff:/var/lib/docker/overlay2/33b79c8ad55ec4cf67b5de08ee54a95cc115093fa82e1efccbc4bcac94da7694/diff:/var/lib/docker/overlay2/6f24ab2896c21c05b407afe576e57e28803cecdf75d0e475b19cd4e6b808ad4e/diff:/var/lib/docker/overlay2/1bccca92078a7af8b31c9945ce2f68029d684347892dd2e49c5a3b836eef3b8c/diff",
"MergedDir": "/var/lib/docker/overlay2/74f1c6af84fbbc7aee2352a6bdc847a111ea8aba3be045fa2ce214cdaab10e0c/merged",
"UpperDir": "/var/lib/docker/overlay2/74f1c6af84fbbc7aee2352a6bdc847a111ea8aba3be045fa2ce214cdaab10e0c/diff",
"WorkDir": "/var/lib/docker/overlay2/74f1c6af84fbbc7aee2352a6bdc847a111ea8aba3be045fa2ce214cdaab10e0c/work"
},
"Name": "overlay2"
},
"RootFS": {
"Type": "layers",
"Layers": [
"sha256:8d853c8add5d1e7b0aafc4b68a3d9fb8e7a0da27970c2acf831fe63be4a0cd2c",
"sha256:9d6f7ae9ff33abede04d0e3307f5e3a4b6fda7c5c3dd73df3bb0eebe37dd0c24",
"sha256:dfa4c16a8763340345b2e2981b59ceae4e28ea22f1fc1babdbc4198003835b2a",
"sha256:7f6b4f9d581bdb49dba3c78c88bded0ce2a10ae056fdfcdeaef2391fa71a4ee4",
"sha256:4f56adc04193766c8b9402584bfc326834382bfb1d220990be4c4acb6ad09282",
"sha256:c30ecb635e175b86b3789622fea6e2ad8a2864e0a6474ad8f1d39bcc51459d4b",
"sha256:2d5df5b67394e5bc97f9acb3cf45e813a842283575f428a78d0d828b4d5450c7",
"sha256:4854e62f8119d020e4ba5757de43b0127eea8a47d4ead6af7839b7e4f4edfea2",
"sha256:433cd2193bbf80e99c1caa48afc38d7ef6290f3509f2d2019eac4eb77792205e",
"sha256:1badb97e55ea478a50101ce170c8d4b9b7791412ffed2e5df1338a73919a4d2f",
"sha256:cab4d37b76a592effecc65438370274f77ef959d5557947325a48566304045fb"
]
},
"Metadata": {
"LastTagTime": "2025-08-22T01:02:49.758410223+08:00"
}
}