本站支持搜索的镜像仓库:Docker Hub、gcr.io、ghcr.io、quay.io、k8s.gcr.io、registry.gcr.io、elastic.co、mcr.microsoft.com
RenkuLab Docker镜像包含启动JupyterLab、RStudio等交互式环境所需的最小依赖,且每个镜像均内置renku CLI。
这些镜像可在DockerHub获取,并通过GitHub Actions从本仓库自动构建(详见.github文件夹)。
镜像会不定期更新,我们会尽量保持其与最新的Python版本、CUDA/Torch版本及R版本同步。通常通过更新GitHub Actions以包含新版本,并修改Makefile来调整默认构建内容。
基础Python(renkulab-py)、基础R(renkulab-r)和基础Julia(renkulab-julia)镜像用于Renku项目模板,用户在RenkuLab平台创建项目或通过本地renku init初始化项目时可选择这些模板。
若需使用项目模板未涵盖的本仓库构建镜像,需按以下步骤操作:
FROM行中,将镜像替换为从本仓库构建的镜像。请参见“命名约定”以选择合适的镜像如需为现有镜像添加启动RenkuLab交互式环境的能力,请参见下文“为自有镜像添加renku支持”部分。
容器启动时可能需要执行某些操作以准备环境。基础镜像的entrypoint.sh脚本已包含部分初始化操作,若扩展镜像,可通过在容器根目录添加post-init.sh脚本来添加自定义初始化步骤。该脚本必须允许非特权用户执行,因为它将以容器的用户权限运行。
使用基础镜像的项目还可在项目根目录放置post-init.sh脚本,该脚本将在/entrypoint.sh和/post-init.sh(容器级)之后执行。
基础镜像位于DockerHub的renku/renkulab-*仓库(*表示“类型”,即编程语言或基础镜像)。命名格式如下,帮助选择合适的镜像:
renku/renkulab-[镜像类型]:[镜像类型版本]-[标签|哈希]
示例:renku/renkulab-py:3.10-0.15.0
renku/renkulab:标识该镜像可用于在RenkuLab平台从项目启动环境-py:表示Python镜像类型,即环境中安装的编程语言或添加额外依赖的基础镜像。详见下文“当前镜像”了解可用类型3.10:表示Python版本为3.100.15.0(或d572e9a):标签是仓库提交的标识,若属于发布版本则为版本号;若非发布版本,则为构建镜像所用Git提交SHA的前几位字符注意:基础镜像包含最新版本的renku CLI,可通过修改项目Dockerfile中的renku版本轻松覆盖。
| 镜像 | 描述 | 基础镜像 |
|---|---|---|
| renku/renkulab-py | 含最小依赖的Jupyter镜像 | jupyter/base-notebook |
| renku/renkulab-r | RStudio镜像 | rocker/verse |
| renku/renkulab-julia | Julia镜像 | renku/renkulab-py |
| renku/renkulab-cuda | 含Python和最小依赖的CUDA镜像 | renku/renkulab-py |
| renku/renkulab-cuda-tf | 含Python和Tensorflow的CUDA镜像 | renku/renkulab-cuda |
| renku/renkulab-vnc | 含Python的VNC镜像 | renku/renkulab-py |
| renku/renkulab-matlab | 含Matlab的VNC镜像 | renku/renkulab-py |
| renku/renkulab-qgis | 含QGIS的VNC镜像 | renku/renkulab-py |
更多已发布镜像的详细列表及DockerHub链接,请参见发布说明。
可通过Renku项目模板获取
含最小依赖的基础Jupyter镜像,基于jupyter/base-notebook。
DockerHub:[***]
可通过Renku项目模板获取
基于rocker "verse"镜像:rocker/verse,该镜像提供比conda更新的R版本,并包含R用户常用的大部分软件依赖。同时包含R Jupyter内核和RStudio。访问RStudio只需将URL中的/lab或/tree替换为/rstudio。
DockerHub:[***]
可通过Renku项目模板获取
基于renku/renkulab-py镜像,已安装Julia。
DockerHub:[***]
基于renku/renkulab-py镜像,包含不同版本的Python和CUDA。
DockerHub:[***]
基于renku/renkulab-py镜像,包含完整虚拟桌面。使用noVNC 1.1.0和TigerVNC 1.9.0,并通过Renku UI提供Linux桌面环境。
[***]
包含上述完整虚拟桌面环境,并已安装Matlab。
[***]
包含上述完整虚拟桌面环境,并已安装QGIS。
[***]
make构建镜像本目录提供Makefile用于本地构建镜像。可通过make all构建所有镜像,或按需构建单个镜像。同时提供推送(push)和拉取(pull)镜像的make目标。
docker构建镜像有时可能需要直接使用docker构建单个镜像:在目标镜像目录中运行docker build -t <名称:标签> .即可。注意,在ARM架构系统(如Apple M1/M2)上,由于部分基础镜像不支持ARM架构,可能需要添加--platform=linux/amd64标志。
从0.16.0版本开始,Python基础镜像支持X86_64和arm64双架构。如需本地构建多架构镜像,可使用make:
$ PLATFORM=linux/amd64,linux/arm64 USE_BUILDX=1 make py
或直接使用buildx命令:
$ docker buildx build \ --platform linux/amd64,linux/arm64 \ --tag myimage:tag \ --push \ docker/py
注意:目前仅Python镜像提供arm64支持。
若您已有包含复杂依赖的Docker镜像,可通过以下方式将其部署到RenkuLab:使用我们的镜像作为基础进行构建。我们提供两个通用镜像,一个适用于通用场景,另一个专用于rocker基础镜像。
假设您的Dockerfile位于当前目录,可通过以下命令将renkulab依赖构建到您的镜像中:
docker build -t <镜像标签> \ --build-arg BASE_IMAGE=<您的基础镜像> \ [***]
其中<镜像标签>是您要使用的镜像名称/标签,<您的基础镜像>是您现有的镜像。
若您的镜像基于rocker R发行版,可执行:
docker build -t <镜像标签> \ --build-arg BASE_IMAGE=<您的基础镜像> \ [***]
如需建议添加其他语言或基础镜像,欢迎提交issue或PR到本仓库。
免费版仅支持 Docker Hub 加速,不承诺可用性和速度;专业版支持更多镜像源,保证可用性和稳定速度,提供优先客服响应。
免费版仅支持 docker.io;专业版支持 docker.io、gcr.io、ghcr.io、registry.k8s.io、nvcr.io、quay.io、mcr.microsoft.com、docker.elastic.co 等。
当返回 402 Payment Required 错误时,表示流量已耗尽,需要充值流量包以恢复服务。
通常由 Docker 版本过低导致,需要升级到 20.x 或更高版本以支持 V2 协议。
先检查 Docker 版本,版本过低则升级;版本正常则验证镜像信息是否正确。
使用 docker tag 命令为镜像打上新标签,去掉域名前缀,使镜像名称更简洁。
探索更多轩辕镜像的使用方法,找到最适合您系统的配置方式
通过 Docker 登录方式配置轩辕镜像加速服务,包含7个详细步骤
在 Linux 系统上配置轩辕镜像源,支持主流发行版
在 Docker Desktop 中配置轩辕镜像加速,适用于桌面系统
在 Docker Compose 中使用轩辕镜像加速,支持容器编排
在 k8s 中配置 containerd 使用轩辕镜像加速
在宝塔面板中配置轩辕镜像加速,提升服务器管理效率
在 Synology 群晖NAS系统中配置轩辕镜像加速
在飞牛fnOS系统中配置轩辕镜像加速
在极空间NAS中配置轩辕镜像加速
在爱快ikuai系统中配置轩辕镜像加速
在绿联NAS系统中配置轩辕镜像加速
在威联通NAS系统中配置轩辕镜像加速
在 Podman 中配置轩辕镜像加速,支持多系统
配置轩辕镜像加速9大主流镜像仓库,包含详细配置步骤
无需登录即可使用轩辕镜像加速服务,更加便捷高效
需要其他帮助?请查看我们的 常见问题 或 官方QQ群: 13763429