容器镜像仓库
本节主要介绍 ECS 访问 ECS Registry Server 容器镜像仓库的操作方式。
配置互联网访问地址
步骤 1:查看网络接口
如下图,使用 ifconfig 命令可以查看当前系统可使用的网络接口。
步骤 2:配置设备 IP 地址
如下图所示,使用 ifconfig 命令可以查看当前系统可以使用的网络接口。
[root@sylixos:/root]# ifconfig ifname inet address
参数说明
参数 | 是否必选 | 说明 |
---|---|---|
ifname | 是 | 指定的网络接口名 |
address | 是 | 配置的有效 IP 地址 |
配置示例
[root@sylixos:/root]# ifconfig en1 inet 192.168.1.100
步骤 3:配置默认网关
若使用网关接入互联网,则需要配置默认网关。
[root@sylixos:/root]# route add default gw gateway
参数说明
参数 | 是否必选 | 说明 |
---|---|---|
gateway | 是 | 配置的默认网关 IP 地址 |
配置示例
[root@sylixos:/root]# route add default gw 192.168.1.1
步骤 4:配置 DNS 服务器地址
配置 DNS 服务器的 IP 地址才能进行域名解析,配置命令如下:
[root@sylixos:/root]# ifconfig ifname dns index address
参数说明
参数 | 是否必选 | 说明 |
---|---|---|
ifname | 是 | 指定的网络接口名 |
index | 是 | 指定的 DNS 序号,支持 0 ~ 3,可同时配置多台 DNS 服务器 |
address | 是 | 指定的 DNS 服务器 IP 地址 |
配置示例
[root@sylixos:/root]# ifconfig en1 dns 0 8.8.8.8
拉取容器镜像
步骤 1:配置仓库信息
参考如下示例,在 "/etc/ecs_registry" 文件中配置 ECS Registry Server 仓库的地址、用户名和密码。
[root@sylixos:/root]# vi /etc/ecs_registry
# from private registry server
registry=http://192.168.1.100:5000
username=AccountName
password=Password
其中 registry 应设为实际的服务器地址和端口号。如果想匿名访问,可以不设置 username 和 password。下面以与 Docker Hub 进行通信为例,介绍其配置方法。
[root@sylixos:/root]# vi /etc/ecs_registry
# from docker hub
registry=https://registry-1.docker.io
username=AccountName
password=Password
步骤 2:拉取容器镜像
执行如下命令,从 ECS Registry Server 仓库拉取容器镜像。
[root@sylixos:/root]# ecs pull AccountName/RepoName
也可以参考如下示例,在命令中指定用户名、密码和拉取位置。
[root@sylixos:/root]# ecs pull AccountName/RepoName [--user AccountName Password] [--output Path]
参数说明
参数 | 是否必选 | 说明 |
---|---|---|
AccountName/RepoName | 是 | 访问远程仓库的名称。AccountName 为有效的 Registry Server 账号,RepoName 为需下载的仓库名称,使用 "/" 间隔。若为公共仓库,则直接为 RepoName |
user | 否 | 访问远程仓库的账号和密码。AccountName 为有效的 Registry Server 账号, Password 为该账号的有效登录密码 |
output | 否 | 指定拉取容器镜像的存储地址。如果指定 Path,则 Path 为有效目录名称,当 Path 目录不存在时会自动创建。如果不指定,则表示当前路径 |
拉取容器镜像的过程如下图:
步骤 3:解包容器镜像
从 ECS Registry Server 仓库拉取的镜像需要进行解包操作,才可以得到容器 Bundle 目录
解包拉取的容器镜像的命令如下:
[root@sylixos:/root]# ecs unpack imagePath bundlePath [id]
参数说明
参数 | 是否必选 | 说明 |
---|---|---|
imagePath | 是 | 需要解包的镜像路径 |
bundlePath | 是 | 镜像解包到的目标容器 Bundle 目录 |
id | 否 | 容器的 ID 字符串,当指定容器 ID 时,解包容器镜像后会执行容器注册 |
操作示例
[root@sylixos:/root]# ecs unpack ecs_demo /apps/ecs_demo