Docker中怎么样制作镜像(docker,开发技术)

时间:2024-05-05 04:30:04 作者 : 石家庄SEO 分类 : 开发技术
  • TAG :

    前言

    以制作CentOS镜像为例,讲述对镜像自定义,打包以及推送的远程仓库的过程,步骤都比较简单可以快速上手。

    创建步骤

    创建CentOS基础镜像

    创建构建目录和Dockerfile,在Dockerfile中编辑镜像相关设置。

    echo"在当前用户目录下创建创建目录docker/build/centos_7.8.2003">/dev/nullmkdir-p~/docker/build/centos_7.8.2003echo"创建Dockerfile到~/docker/build/centos_7.8.2003目录下">/dev/nullcat>~/docker/build/centos_7.8.2003/Dockerfile<<EOF#指定基础镜像FROMcentos:7.8.2003#设置环境变量ENVLANG=zh_CN.UTF-8\\LANGUAGE=zh_CN:zh\\LC_ALL=zh_CN.UTF-8#只在构建镜像的时候执行这些shell指令RUNyumupdate-y&&\\yumreinstall-yglibc-common&&\\yuminstall-ytelnetnet-tools&&\\yumcleanall&&\\rm-rf/tmp/*rm-rf/var/cache/yum/*&&\\localedef-c-fUTF-8-izh_CNzh_CN.UTF-8&&\\ln-sf/usr/share/zoneinfo/Asia/Shanghai/etc/localtimeEOF

    参考菜鸟教程 - docker build构建镜像,格式为docker build -t <镜像名>:<镜像版本号> <Dockerfile所在目录>,不写镜像版本号默认latest

    #解析~/docker/build/centos_7.8.2003/Dockerfile构建名为base-centos的镜像dockerbuild-tbase-centos~/docker/build/centos_7.8.2003

    构建完成后可以在本地镜像列表中看到,使用的基础镜像和构建生成的新镜像。

    dockerimages

    Docker中怎么样制作镜像

    创建容器并自定义

    使用使用新镜像创建并进入容器,这个容器就是一个虚拟CentOS系统。

    echo"用base-centos镜像创建容器,并命名为base-centos">/dev/nulldockerrun\--namebase-centos\--privileged=true\-dit\base-centos\/usr/sbin/initecho"进入centos容器">/dev/nulldockerexec-itbase-centos/bin/bash

    对容器中虚拟系统自定义,比如安装常用的工具。其实这些也是可以写在Dockerfile中的,定义在RUN指令后。

    echo"vim:编辑文件">/dev/nullyuminstall-yvimecho"lsof:方便查看端口信息">/dev/nullyuminstall-ylsofecho"wget:文件下载">/dev/nullyuminstall-ywgetecho"tree:查看目录结构">/dev/nullyuminstall-ytreeecho"安装python">/dev/nullyuminstall-ypython-develecho"C的编译环境">/dev/nullyuminstall-ygccgcc-c++yuminstall-yzlibyuminstall-yzlib-develyuminstall-ytclbuild-essentialtkgettext

    以自定义容器创建新镜像

    命令格式为docker commit <容器名称或者ID> <生成的镜像名>:<镜镜像版本号>,不写镜像版本号默认latest。创建时这个容器也可以是停止状态。

    dockercommitbase-centoscentos:7.8.2003_v1

    到此镜像就创建完成了,在镜像列表可以看到新镜像。

    Docker中怎么样制作镜像

    保存、加载镜像tar包

    将镜像保存为tar包,格式为docker save -o <文件名> <镜像名>:<镜像标签>,参考菜鸟教程 - docker save。

    dockersave-o~/docker/build/centos_7.8.2003/centos_7.8.2003.tarcentos:7.8.2003_v1

    Docker中怎么样制作镜像

    加载tar包生成镜像。

    dockerload--input~/docker/build/centos_7.8.2003/centos_7.8.2003.tar

    Docker中怎么样制作镜像

    已存在重复镜像执行加载命令无效。

    Docker中怎么样制作镜像

    将镜像推送到远程仓库

    docker登陆远程仓库。格式为docker login --username=<用户名> <仓库地址>或者docker login -u <用户名> -p <密码> <仓库地址>

    Docker中怎么样制作镜像

    docker tag <镜像ID> <远程镜像仓库地址>:<镜像版本号>标记后。

    echo"标记镜像地址和版本号">/dev/nulldockertag66b1bc81e1f2registry.cn-shanghai.aliyuncs.com/exposure/centos:7.8.2003_v1

    Docker中怎么样制作镜像

    docker push <远程镜像仓库地址>:<镜像版本号>推送到远程仓库。

    echo"推送到远程仓库">/dev/nulldockerpushregistry.cn-shanghai.aliyuncs.com/exposure/centos:7.8.2003_v1
     </div> <div class="zixun-tj-product adv-bottom"></div> </div> </div> <div class="prve-next-news">
    本文:Docker中怎么样制作镜像的详细内容,希望对您有所帮助,信息来源于网络。
    上一篇:php里面可以写js吗下一篇:

    4 人围观 / 0 条评论 ↓快速评论↓

    (必须)

    (必须,保密)

    阿狸1 阿狸2 阿狸3 阿狸4 阿狸5 阿狸6 阿狸7 阿狸8 阿狸9 阿狸10 阿狸11 阿狸12 阿狸13 阿狸14 阿狸15 阿狸16 阿狸17 阿狸18