docker私有仓库安装及镜像制作

参考官方教程:docker registry官方文档


docker registry安装

登录ubuntu14.04后,执行安装命令:docker run -d -p 5000:5000 --name registry registry:2  

对应国内镜像库命令是:sudo docker run -d -p 5000:5000 --name registry daocloud.io/library/registry:2

注意:因为使用的是docker命令,所以需要提前安装docker,参考:docker安装

因为docker registry默认是需要认证登录的,我们是内部用于CICD,所以暂时不需要权限登录

所以需要修改/etc/default/docker

DOCKER_OPTS="--insecure-registry ${ip}:${port}"

删除或停止docker registry

docker stop registry && docker rm -v registry

构建镜像

docker镜像的制作是一层一层累加起来,而且是每个dockerfile命令是一layer,所以,针对于我们的项目,首先得需要一个操作系统的基础镜像

1.上传操作系统基础镜像

在上传基础镜像之前,需要修改目标镜像要上传的仓库地址。在这里是根据镜像的tag去识别,需要上传的私有仓库地址

docker tag {image-id} ${docker-registry-ip}:${port}/unbuntu:14.04

docker push ${docker-registry-ip}:${port}/unbuntu:14.04

注意:如果是执行docker push unbuntu:14.04命令,是上传官方仓库,是需要注册账号

如何判断是否上传成功:

上传镜像到仓库

也可以查看:http://${ip}:${port}/v2/_catalog或是curl -i -k -v http://${ip}:${port}/v2/_catalog

2.制作nodejs安装镜像

(1)dockerfile构建镜像

docker提供dockerfile命令区构建镜像,所以用户只需书写Dockerfile文件即可。这里我们的Dockerfile文件内容为

dockerfile脚本

然后,我们执行docker构建命令:docker build -t test:1.0 .

构建成功后,可以通过docker image命令查看镜像,使用docker run imageid来启动镜像

进入容器命令:docker exec -it container-id bash 退出容器,保持容器状态:ctrl+d

(2)docker commit构建

方法一中镜像的构建,是基于基础镜像之上的叠加。那么我们在想基础镜像是如何构建的。下边介绍的方法是适用于基础镜像的构造。譬如ubuntu镜像的构建可以使用lxc。这一步不详细讲解了,ubuntu的基础镜像很多,我们先docker命令下载一个最基础的镜像。然后执行docker run命令启动镜像,创建一个容器

docker exec -it {image-id} bash进入容器,需要安装什么在容器内执行安装命令。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 转载自 http://blog.opskumu.com/docker.html 一、Docker 简介 Docke...
    极客圈阅读 13,585评论 0 120
  • 五、Docker 端口映射 无论如何,这些 ip 是基于本地系统的并且容器的端口非本地主机是访问不到的。此外,除了...
    R_X阅读 5,812评论 0 7
  • Docker — 云时代的程序分发方式 要说最近一年云计算业界有什么大事件?Google Compute Engi...
    ahohoho阅读 15,710评论 15 147
  • 0x01 核心概念 Docker镜像类似于虚拟机镜像,可以理解为一个面向Docker引擎的只读模板,包含了文件系统...
    闲云逸心阅读 10,236评论 0 9
  • 昨天跟爷爷叔公堂叔们吃饭,吃大闸蟹,嘻嘻哈哈,战斗力极强。晚饭后闲聊,爷爷问起知不知道三叔最近在做什么,我扭头。 ...
    何kk阅读 1,657评论 0 0