您的位置:首页 > 运维架构 > Docker

Docker 制作基础镜像----打包操作系统

2018-08-17 09:27 543 查看
制作docker基础 镜像:
1. tar --numeric-owner -cvf Linux_base.tar /audit /cf_backup /etc /init /lib64 /log /opt /run /usr /web /bin /dev /lib /linuxrc /mnt /passwd /root /sbin /shadow /tmp /var /webadmin
2. cat Linux_base.tar | docker import - Linux_base
3. Docker images 得到对应镜像的images ID



接下来上传制作好的镜像到Docker 仓库中(以阿里云仓库为例)

1. 登录阿里云Docker Registry

$ sudo docker login --username=不爱编程的程序员lucifer registry.cn-hangzhou.aliyuncs.com

用于登录的用户名为阿里云账号全名,密码为开通服务时设置的密码。

您可以在产品控制台首页修改登录密码。

2. 从Registry中拉取镜像

$ sudo docker pull registry.cn-hangzhou.aliyuncs.com/lucifer_test/nvas_test:[镜像版本号]


3. 将镜像推送到Registry

$ sudo docker login --username=不爱编程的程序员lucifer registry.cn-hangzhou.aliyuncs.com
$ sudo docker tag [ImageId] registry.cn-hangzhou.aliyuncs.com/lucifer_test/nvas_test:[镜像版本号]
$ sudo docker push registry.cn-hangzhou.aliyuncs.com/lucifer_test/nvas_test:[镜像版本号]

请根据实际镜像信息替换示例中的[ImageId]和[镜像版本号]参数。

docker tag IMAGE_ID registry.cn-hangzhou.aliyuncs.com/命名空间/仓库名称:版本号

docker push registry.cn-hangzhou.aliyuncs.com/命名空间/仓库名称:版本号
如果镜像比较大,会花费很久的时间,所以需要等。

4. 选择合适的镜像仓库地址

从ECS推送镜像时,可以选择使用镜像仓库内网地址。推送速度将得到提升并且将不会损耗您的公网流量。

如果您使用的机器位于经典网络,请使用 registry-internal.cn-hangzhou.aliyuncs.com 作为Registry的域名登录,并作为镜像命名空间前缀。

如果您使用的机器位于VPC网络,请使用 registry-vpc.cn-hangzhou.aliyuncs.com 作为Registry的域名登录,并作为镜像命名空间前缀。

5. 示例

使用"docker tag"命令重命名镜像,并将它通过专有网络地址推送至Registry。

[code]$ sudo docker images
REPOSITORY                                                         TAG                 IMAGE ID            CREATED             VIRTUAL SIZE
registry.aliyuncs.com/acs/agent                                    0.7-dfb6816         37bb9c63c8b2        7 days ago          37.89 MB
$ sudo docker tag 37bb9c63c8b2 registry-vpc.cn-hangzhou.aliyuncs.com/acs/agent:0.7-dfb6816[/code]
使用"docker images"命令找到镜像,将该镜像名称中的域名部分变更为Registry专有网络地址。

$ sudo docker push registry-vpc.cn-hangzhou.aliyuncs.com/acs/agent:0.7-dfb6816
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  Docker