docker.io/jupyterhub/k8s-singleuser-sample:3.0.0 linux/amd64

docker.io/jupyterhub/k8s-singleuser-sample:3.0.0 - 国内下载镜像源 浏览次数:8

这是JupyterHub在Kubernetes环境中使用的单用户示例镜像,用于演示如何在Kubernetes集群中部署JupyterHub的单用户笔记本实例,包含基础的Jupyter环境及必要依赖,可与JupyterHub的K8s部署集成,支持用户在K8s集群上运行个人的Jupyter笔记本服务。

源镜像 docker.io/jupyterhub/k8s-singleuser-sample:3.0.0
国内镜像 swr.cn-north-4.myhuaweicloud.com/ddn-k8s/docker.io/jupyterhub/k8s-singleuser-sample:3.0.0
镜像ID sha256:3e4b24891bec3ddbbeadfa9bb58ede78cf003ac8efa4e9c2b734c69d21e12b24
镜像TAG 3.0.0
大小 513.81MB
镜像源 docker.io
项目信息 Docker-Hub主页 🚀项目TAG 🚀
CMD jupyter lab
启动入口 tini --
工作目录 /home/jovyan
OS/平台 linux/amd64
浏览量 8 次
贡献者
镜像创建 2023-08-11T13:03:21.474519755Z
同步时间 2026-03-13 16:00
开放端口
8888/tcp
环境变量
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.11.4 PYTHON_PIP_VERSION=23.1.2 PYTHON_SETUPTOOLS_VERSION=65.5.1 PYTHON_GET_PIP_URL=https://github.com/pypa/get-pip/raw/9af82b715db434abb94a0a6f3569f43e72157346/public/get-pip.py PYTHON_GET_PIP_SHA256=45a2bb8bf2bb5eff16fdd00faef6f29731831c7c59bd9fc2bf1f3bed511ff1fe DEBIAN_FRONTEND=noninteractive NB_USER=jovyan NB_UID=1000 HOME=/home/jovyan

Docker拉取命令

docker pull swr.cn-north-4.myhuaweicloud.com/ddn-k8s/docker.io/jupyterhub/k8s-singleuser-sample:3.0.0
docker tag  swr.cn-north-4.myhuaweicloud.com/ddn-k8s/docker.io/jupyterhub/k8s-singleuser-sample:3.0.0  docker.io/jupyterhub/k8s-singleuser-sample:3.0.0

Containerd拉取命令

ctr images pull swr.cn-north-4.myhuaweicloud.com/ddn-k8s/docker.io/jupyterhub/k8s-singleuser-sample:3.0.0
ctr images tag  swr.cn-north-4.myhuaweicloud.com/ddn-k8s/docker.io/jupyterhub/k8s-singleuser-sample:3.0.0  docker.io/jupyterhub/k8s-singleuser-sample:3.0.0

Shell快速替换命令

sed -i 's#jupyterhub/k8s-singleuser-sample:3.0.0#swr.cn-north-4.myhuaweicloud.com/ddn-k8s/docker.io/jupyterhub/k8s-singleuser-sample:3.0.0#' deployment.yaml

Ansible快速分发-Docker

#ansible k8s -m shell -a 'docker pull swr.cn-north-4.myhuaweicloud.com/ddn-k8s/docker.io/jupyterhub/k8s-singleuser-sample:3.0.0 && docker tag  swr.cn-north-4.myhuaweicloud.com/ddn-k8s/docker.io/jupyterhub/k8s-singleuser-sample:3.0.0  docker.io/jupyterhub/k8s-singleuser-sample:3.0.0'

Ansible快速分发-Containerd

#ansible k8s -m shell -a 'ctr images pull swr.cn-north-4.myhuaweicloud.com/ddn-k8s/docker.io/jupyterhub/k8s-singleuser-sample:3.0.0 && ctr images tag  swr.cn-north-4.myhuaweicloud.com/ddn-k8s/docker.io/jupyterhub/k8s-singleuser-sample:3.0.0  docker.io/jupyterhub/k8s-singleuser-sample:3.0.0'

镜像构建历史


# 2023-08-11 21:03:21  0.00B 设置默认要执行的命令
CMD ["jupyter" "lab"]
                        
# 2023-08-11 21:03:21  0.00B 配置容器启动时运行的命令
ENTRYPOINT ["tini" "--"]
                        
# 2023-08-11 21:03:21  0.00B 声明容器运行时监听的端口
EXPOSE map[8888/tcp:{}]
                        
# 2023-08-11 21:03:21  0.00B 指定运行容器时使用的用户
USER jovyan
                        
# 2023-08-11 21:03:21  0.00B 设置工作目录为/home/jovyan
WORKDIR /home/jovyan
                        
# 2023-08-11 21:03:21  269.84MB 执行命令并创建新的镜像层
RUN |1 PIP_CACHE_DIR=/tmp/pip-cache /bin/sh -c pip install         --find-links=/tmp/wheels/         -r /tmp/requirements.txt # buildkit
                        
# 2023-08-11 21:02:22  0.00B 定义构建参数
ARG PIP_CACHE_DIR=/tmp/pip-cache
                        
# 2023-08-11 21:02:22  6.48KB 复制新文件或目录到容器中
COPY requirements.txt /tmp/requirements.txt # buildkit
                        
# 2023-08-11 21:02:22  115.85MB 执行命令并创建新的镜像层
RUN /bin/sh -c apt-get update  && apt-get upgrade -y  && apt-get install -y --no-install-recommends         ca-certificates         dnsutils         iputils-ping         tini         git  && rm -rf /var/lib/apt/lists/* # buildkit
                        
# 2023-08-11 20:44:20  333.59KB 执行命令并创建新的镜像层
RUN /bin/sh -c adduser         --disabled-password         --gecos "Default user"         --uid ${NB_UID}         --home ${HOME}         --force-badname         ${NB_USER} # buildkit
                        
# 2023-08-11 20:44:20  0.00B 设置环境变量 NB_USER NB_UID HOME
ENV NB_USER=jovyan NB_UID=1000 HOME=/home/jovyan
                        
# 2023-08-11 20:44:20  0.00B 设置环境变量 DEBIAN_FRONTEND
ENV DEBIAN_FRONTEND=noninteractive
                        
# 2023-07-22 17:54:20  0.00B 设置默认要执行的命令
CMD ["python3"]
                        
# 2023-07-22 17:54:20  12.26MB 执行命令并创建新的镜像层
RUN /bin/sh -c set -eux; 		savedAptMark="$(apt-mark showmanual)"; 	apt-get update; 	apt-get install -y --no-install-recommends wget; 		wget -O get-pip.py "$PYTHON_GET_PIP_URL"; 	echo "$PYTHON_GET_PIP_SHA256 *get-pip.py" | sha256sum -c -; 		apt-mark auto '.*' > /dev/null; 	[ -z "$savedAptMark" ] || apt-mark manual $savedAptMark > /dev/null; 	apt-get purge -y --auto-remove -o APT::AutoRemove::RecommendsImportant=false; 	rm -rf /var/lib/apt/lists/*; 		export PYTHONDONTWRITEBYTECODE=1; 		python get-pip.py 		--disable-pip-version-check 		--no-cache-dir 		--no-compile 		"pip==$PYTHON_PIP_VERSION" 		"setuptools==$PYTHON_SETUPTOOLS_VERSION" 	; 	rm -f get-pip.py; 		pip --version # buildkit
                        
# 2023-07-22 17:54:20  0.00B 设置环境变量 PYTHON_GET_PIP_SHA256
ENV PYTHON_GET_PIP_SHA256=45a2bb8bf2bb5eff16fdd00faef6f29731831c7c59bd9fc2bf1f3bed511ff1fe
                        
# 2023-07-22 17:54:20  0.00B 设置环境变量 PYTHON_GET_PIP_URL
ENV PYTHON_GET_PIP_URL=https://github.com/pypa/get-pip/raw/9af82b715db434abb94a0a6f3569f43e72157346/public/get-pip.py
                        
# 2023-07-22 17:54:20  0.00B 设置环境变量 PYTHON_SETUPTOOLS_VERSION
ENV PYTHON_SETUPTOOLS_VERSION=65.5.1
                        
# 2023-07-22 17:54:20  0.00B 设置环境变量 PYTHON_PIP_VERSION
ENV PYTHON_PIP_VERSION=23.1.2
                        
# 2023-07-22 17:54:20  32.00B 执行命令并创建新的镜像层
RUN /bin/sh -c set -eux; 	for src in idle3 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
                        
# 2023-07-22 17:54:20  31.87MB 执行命令并创建新的镜像层
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 		--without-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); 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; 	rm -rf /var/lib/apt/lists/*; 		python3 --version # buildkit
                        
# 2023-07-22 17:54:20  0.00B 设置环境变量 PYTHON_VERSION
ENV PYTHON_VERSION=3.11.4
                        
# 2023-07-22 17:54:20  0.00B 设置环境变量 GPG_KEY
ENV GPG_KEY=A035C8C19219BA821ECEA86B64E628F8D684696D
                        
# 2023-07-22 17:54:20  3.11MB 执行命令并创建新的镜像层
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
                        
# 2023-07-22 17:54:20  0.00B 设置环境变量 LANG
ENV LANG=C.UTF-8
                        
# 2023-07-22 17:54:20  0.00B 设置环境变量 PATH
ENV PATH=/usr/local/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
                        
# 2023-07-28 07:25:07  0.00B 
/bin/sh -c #(nop)  CMD ["bash"]
                        
# 2023-07-28 07:25:07  80.54MB 
/bin/sh -c #(nop) ADD file:3d726bf0abbc08d6dda026cc406cdfb529deb60071641d164de28fcd62d1c1c0 in / 
                        
                    

镜像信息

{
    "Id": "sha256:3e4b24891bec3ddbbeadfa9bb58ede78cf003ac8efa4e9c2b734c69d21e12b24",
    "RepoTags": [
        "jupyterhub/k8s-singleuser-sample:3.0.0",
        "swr.cn-north-4.myhuaweicloud.com/ddn-k8s/docker.io/jupyterhub/k8s-singleuser-sample:3.0.0"
    ],
    "RepoDigests": [
        "jupyterhub/k8s-singleuser-sample@sha256:35ed5d87622e7bf39b65db02bcd0130a8bb01c55c81cea7a5bd8d1d04bbbb8b6",
        "swr.cn-north-4.myhuaweicloud.com/ddn-k8s/docker.io/jupyterhub/k8s-singleuser-sample@sha256:903acdb5f0f18bf1e1e196971ec8222ceaf692486c3a4b8db7d76aef551025ea"
    ],
    "Parent": "",
    "Comment": "buildkit.dockerfile.v0",
    "Created": "2023-08-11T13:03:21.474519755Z",
    "Container": "",
    "ContainerConfig": null,
    "DockerVersion": "",
    "Author": "",
    "Config": {
        "Hostname": "",
        "Domainname": "",
        "User": "jovyan",
        "AttachStdin": false,
        "AttachStdout": false,
        "AttachStderr": false,
        "ExposedPorts": {
            "8888/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.11.4",
            "PYTHON_PIP_VERSION=23.1.2",
            "PYTHON_SETUPTOOLS_VERSION=65.5.1",
            "PYTHON_GET_PIP_URL=https://github.com/pypa/get-pip/raw/9af82b715db434abb94a0a6f3569f43e72157346/public/get-pip.py",
            "PYTHON_GET_PIP_SHA256=45a2bb8bf2bb5eff16fdd00faef6f29731831c7c59bd9fc2bf1f3bed511ff1fe",
            "DEBIAN_FRONTEND=noninteractive",
            "NB_USER=jovyan",
            "NB_UID=1000",
            "HOME=/home/jovyan"
        ],
        "Cmd": [
            "jupyter",
            "lab"
        ],
        "ArgsEscaped": true,
        "Image": "",
        "Volumes": null,
        "WorkingDir": "/home/jovyan",
        "Entrypoint": [
            "tini",
            "--"
        ],
        "OnBuild": null,
        "Labels": null
    },
    "Architecture": "amd64",
    "Os": "linux",
    "Size": 513805629,
    "GraphDriver": {
        "Data": {
            "LowerDir": "/var/lib/docker/overlay2/00676ce73ab62afecf5f26bbeec564544e0e558e6f3b9d417d33f8721d801991/diff:/var/lib/docker/overlay2/a1c539ce3be9070eff48e0a9ba45bd4adf43e03c342fb2f60a1fa86b4a80be22/diff:/var/lib/docker/overlay2/51ab6eb1284ed0e20e99e2a6bcf09553104468742a88696496d0542c773bee9d/diff:/var/lib/docker/overlay2/7b898bc864cecdf13eebddbe4ae7763db2861791e12469814baff8d128e1cc7f/diff:/var/lib/docker/overlay2/106724b7974a14cd54fbeb64bd6b02901aeb537470d5d28f194159be7be4d7aa/diff:/var/lib/docker/overlay2/56d9e15b97a84020f4715c2db7eb67c5a34d7019dbd6795e643c713261b7b4b0/diff:/var/lib/docker/overlay2/a55d59c17eee10e03046a4b025f39ef033bccf5459a9a852b29a1bbe200a2e46/diff:/var/lib/docker/overlay2/bb4bb4c36f482bec0e0ad1a131b3977b2fb7cba23a8890bfdac6f4052c7ed2d5/diff:/var/lib/docker/overlay2/aadc643092f2726a15d6edf18fcbb1f5e349f3d587ae5d3a7f7e835814a070a5/diff",
            "MergedDir": "/var/lib/docker/overlay2/dd462fb91f7ae4d2f40b5e94a8613c8fcc77a5464359c5e5c6e9c7fc7491046d/merged",
            "UpperDir": "/var/lib/docker/overlay2/dd462fb91f7ae4d2f40b5e94a8613c8fcc77a5464359c5e5c6e9c7fc7491046d/diff",
            "WorkDir": "/var/lib/docker/overlay2/dd462fb91f7ae4d2f40b5e94a8613c8fcc77a5464359c5e5c6e9c7fc7491046d/work"
        },
        "Name": "overlay2"
    },
    "RootFS": {
        "Type": "layers",
        "Layers": [
            "sha256:8ce178ff9f343a37169f68dd0df03099524afb71a879551c5f17e493c7b1d3ec",
            "sha256:d1e9ee27525074a3b8daee86c1517af4c990f97853f3c993f00abe518b50bccc",
            "sha256:b368d30a5cfe8f341aa69c4cec5a6a5b93091061d1753f879a2c823b90b441ed",
            "sha256:070c5f83bca9c8da6177d335cb929c7ffafac2b197b734cc3e928ca3cfa83b8e",
            "sha256:054242ef6f9d1fe36d5a69f59b4e4cdcad94f4fb54003c824fc9c07d4f14f271",
            "sha256:c2e5a7cefddc18f88cf9dfc60de2cfb1bcadcb3205d3d776387b41a6a723cf4a",
            "sha256:55047dd50a35ed40ac61a04075ed3ccce5b31ec747bfa1995c3a79c50ffaadff",
            "sha256:e6d99c640da44920c0982f5b1fef6a38af3bd9fa9b6f472d8ffe6beebdceab6d",
            "sha256:39a7016cd9c0518ff2008c869fdfb8c7ca9e6bade433df09d6a4da2afab99f5c",
            "sha256:5f70bf18a086007016e948b04aed3b82103a36bea41755b6cddfaf10ace3c6ef"
        ]
    },
    "Metadata": {
        "LastTagTime": "2026-03-13T15:59:42.323524804+08:00"
    }
}

更多版本

docker.io/jupyterhub/k8s-singleuser-sample:3.0.0

linux/amd64 docker.io513.81MB2026-03-13 16:00
7