专属Repository
专属Repository介绍
英博云在每个分区内,会为每个租户分配一个专属的repository,其url前缀形如:
# 公网推送地址
registry-{region-label}.ebcloud.com/tenant-{user-code}
# 内网推送地址
registry-{region-label}-internal.ebcloud.com/tenant-{user-code}
其中region-label为每个分区独有,华北一区的region-label为:cn-huabei1
。
{user-code}为每个租户专属的识别码,为8位数字,一个示例为:tenant-63636668。
推送镜像至专属Repository
英博云支持用户向专属Repository推送镜像,公网、内网均可以。
从公网推送
首先将您的镜像retag为英博云的专属Repository的url,示例如下:
docker tag my_image:my_tag registry-cn-huabei1.ebcloud.com/tenant-xxxxxxxx/my_image:my_tag
然后执行:docker login
,docker push
,示例如下:
docker login registry-cn-huabei1.ebcloud.com
# 输入用户名、密码
docker push registry-cn-huabei1.ebcloud.com/tenant-xxxxxxxx/my_image:my_tag
注意:
- 关于
docker login
的用户名、密码,具体请咨询客服。
从内网推送(开发机内)
英博云支持在开启了docker功能的开发机内,向自己的专属registry内推送镜像。用户可以基于系统内置镜像,制作自己的镜像并推送至专属registry中。
以下展示了一个例子,我们基于系统内置镜像,安装emacs,首先在开发机内准备Dockerfile如下:
# 基于指定的基础镜像
FROM registry-cn-huabei1-internal.ebsys/pytorch:2.5.1-cuda12.2-python3.10-ubuntu22.04-v09
# 设置环境变量以避免交互式提示
ENV DEBIAN_FRONTEND=noninteractive
# 更新包列表并安装emacs
RUN apt-get update && \
apt-get install -y --no-install-recommends emacs && \
apt-get clean && \
rm -rf /var/lib/apt/lists/*
# 重置环境变量(可选)
ENV DEBIAN_FRONTEND=
# 设置工作目录
WORKDIR /workspace
# 设置默认命令(可选)
CMD ["/bin/bash"]
然后执行命令,制作自己的镜像:
docker build -t registry-cn-huabei1-internal.ebcloud.com/tenant-xxxxxxxx/my-emacs-pytorch:v0.1 .
推送镜像自己的专属registry:
docker push registry-cn-huabei1-internal.ebcloud.com/tenant-xxxxxxxx/my-emacs-pytorch:v0.1
注意:
- 在自己的开发机内,推送及拉取自己专属registry内的镜像,不需要docker login,系统会自动进行鉴权。