构建自己的Docker镜像

本篇文章分享如何通过docker build命令来构建自己的镜像,开始吧~

查看已有镜像

docker images

采用centos镜像创建一个容器

docker run -it centos

假如需要安装vim

yum install vim

如遇报错,报错信息如下

Error: Failed to download metadata for repo 'appstream': Cannot prepare internal mirrorlist: No URLs in mirrorlist

解决方案为在镜像内

centos
cd /etc/yum.repos.d/
sed -i 's/mirrorlist/#mirrorlist/g' /etc/yum.repos.d/CentOS-*
sed -i 's|#baseurl=http://mirror.centos.org|baseurl=http://vault.centos.org|g' /etc/yum.repos.d/CentOS-*
yum makecache
yum update -y
yum -y install vim

安装成功后显示如下

 采用exit退出容器

exit

 通过docker container ls -a查看所有容器

docker container ls -a

可见刚刚退出的容器

 采用docker commit vigorous_golick yueyue/centos-vim将刚刚的容器打包成镜像,其中vigorous_golick为容器名,yueyue/centos-vim为新的镜像名

docker commit vigorous_golick yueyue/centos-vim

 采用docker images可查看镜像,其中yueyue/centos-vim为刚刚构建的对象

docker images

 通过docker history 768cf891aa3a可查看镜像的构建过程,其中768cf891aa3a为镜像id

docker history 768cf891aa3a

 

 以上方法一般不提倡使用,因为当把该镜像发布出去以后,别人会不知道镜像里面有哪些内容,因此更推荐使用buil一个Dockerfile的方法,开始吧~

首先删掉刚刚的镜像docker image rm 768cf891aa3a

docker image rm 768cf891aa3a

接着创建一个目录,并进入该目录

mkdir docker-centos-vim
cd docker-centos-vim

 在该目录下,新建一个Dockerfile

vim Dockerfile

其内容如下

FROM centos
RUN yum install -y vim

保存退出

采用docker build -t yueyue/centos-vim-new .进行构建镜像

docker build -t yueyue/centos-vim-new .

如果有报错,如下

Error: Failed to download metadata for repo 'appstream': Cannot prepare internal mirrorlist: No URLs in mirrorlist
The command '/bin/sh -c yum install -y vim' returned a non-zero code: 1

则修改Dockerfile的内容

FROM centos
RUN cd /etc/yum.repos.d/
RUN sed -i 's/mirrorlist/#mirrorlist/g' /etc/yum.repos.d/CentOS-*
RUN sed -i 's|#baseurl=http://mirror.centos.org|baseurl=http://vault.centos.org|g' /etc/yum.repos.d/CentOS-*
RUN yum makecache && yum update -y && yum -y install vim

保存退出后

通过docker build -t yueyue/centos-vim-new .构建镜像

docker build -t yueyue/centos-vim-new .

可通过docker image ls查看

docker image ls

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值