小编这次要给大家分享的是怎么使用码头工人构建企业级自定义镜像,文章内容丰富,感兴趣的小伙伴可以来了解一下,希望大家阅读完这篇文章之后能够有所收获。
临下班前,楼主接到了一个需求,由于基础镜像标准发生变,更需要按照最新的码头工人镜像标准构建自己应用的自定义镜像。目前的标准是这样的:基础架构组只提供所有项目必须接入的3个公共镜像,这3个公共基础镜像包含了:JDK8,人行天桥,阿尔萨斯。对于各自业务组的应用如果还需要加入其它镜像,则由各个业务组自己基于基础架构组提供的公共镜像之上,再添加自定义的镜像,结构图如下:
<强>编写Dockerfile 强>
基于最新的规范来看,我们需要编写一个Dockerfile,然后引用基础架构组提供的基础镜像,再加入应用需要的其他镜像。因此最终的Dockerfile文件如下:
从基础镜像地址 运行的apk添加需要添加的自定义镜像 …
<>强卸载旧版本强>
较旧的码头工人版本称为码头工人或docker-engine。如果已安装这些程序,请卸载它们以及相关的依赖项。
$ sudo百胜移除码头工人\ docker-client \ docker-client-latest \ docker-common \ docker-latest \ docker-latest-logrotate \ docker-logrotate \ docker-engine
<强>使用码头工人仓库进行安装强>
在新主机上首次安装码头工人Engine-Community之前,需要设置码头工人仓库。之后,您可以从仓库安装和更新码头工人。
<强>设置仓库强>
安装所需的软件包.yum-utils提供了yum-config-manager,并且设备映射器存储驱动程序需要device-mapper-persistent-data和lvm2。
$ sudo yum安装- y yum-utils \ device-mapper-persistent-data \ lvm2
使用以下命令来设置稳定的仓库。
$ sudo yum-config-manager \ ——add-repo \ https://download.docker.com/linux/centos/docker-ce.repo
<>强安装码头工人Engine-Community 强>
安装最新版本的码头工人Engine-Community和containerd,或者转到下一步安装特定版本:
$ sudo yum安装docker-ce docker-ce-cli containerd。io
如果提示您接受GPG密钥,请选是。
有多个码头工人仓库吗?
如果启用了多个码头工人仓库,则在未在yum安装或yum更新命令中指定版本的情况下,进行的安装或更新将始终安装最高版本,这可能不适合您的稳定性需求。
码头工人安装完默认未启动。并且已经创建好码头工人用户组,但该用户组下没有用户。
<强>要安装特定版本的码头工人Engine-Community,请在存储库中列出可用版本,然后选择并安装:强>
1,列出并排序您存储库中可用的版本。此示例按版本号(从高到低)对结果进行排序。
百胜列表docker-ce美元——showduplicates |排序- r
docker-ce。x86_64 3:18.09.0-3。el7 docker-ce-stable docker-ce。x86_64 18.06.1.ce-3。el7 docker-ce-stable docker-ce。x86_64 18.06.0.ce-3。el7 docker-ce-stable
2,通过其完整的软件包名称安装特定版本,该软件包名称是软件包名称(docker-ce)加上版本字符串(第二列),从第一个冒号(:)一直到第一个连字符,并用连字符(-)分隔,例如:docker-ce-18.09.1。
$ sudo yum安装docker-ce & lt; VERSION_STRING>docker-ce-cli & lt; VERSION_STRING>containerd。io
启动码头工人。
$ sudo systemctl开始码头工人
通过运行hello world映像来验证是否正确安装了码头工人Engine-Community。
$ sudo码头工人运行hello world
<强>根据Dockerfile文件进行自定义镜像的构建强>
在Dockerfile文件所在的目录下执行如下命令进行自定义镜像的构建:
sudo码头工人建造- f Dockerfile - t你的自定义镜像名称。
推送到企业私有的镜像港之前进行登录
码头工人登录企业私有地的港址 输入用户名 输入密码 完成登录
将构建完成的自定义镜像推送到企业私有港口的
sudo码头工人把你的自定义镜像名称
通过1。编写自定义构建镜像的Dockerfile 2。安装码头工人环境3。构建自定义镜像4。上传自定义镜像到港以上4个步骤,我们便完成了应用自定义镜像的构建,后续我们自己的应用中直接使用自定义镜像即可,这样做的好处就是基于基础的镜像,我们可以随意组合,构建出满足自己应用的镜像,更灵活,镜像分层管理,可扩展。