Docker镜像打包

2025-06-10 369
Docker

类型:虚拟化技术

简介:基于操作系统层级的虚拟化技术,将软件与其依赖项打包为容器。

我们在使用Docker平台的时候难免会遇到代码分享等情况,Docker提供镜像打包分享操作,让他人轻松获取我们的成果。本期主要介绍Docker镜像加载到镜像打包的全流程指南。

一、Docker镜像加载

1、镜像准备工作

在开始镜像加载前,请先确认系统环境:若尚未安装Docker,请参考做侧边栏Docker安装教程完成环境部署;若已安装Docker,则需准备一个已打包的镜像文件。此处以命名为spider.tar的镜像文件为例进行操作演示。

2、Docker执行镜像加载

使用以下命令完成镜像加载操作:

docker load -i spider.tar

注意:请将命令中的spider.tar替换为实际镜像文件名。若镜像文件体积较大,加载过程可能需要持续数分钟,请耐心等待。

3、查看已加载镜像

镜像加载完成后,可通过以下命令查看已加载的镜像列表及详细属性:

docker images

执行命令后,系统将以表格形式展示镜像的 REPOSITORY(仓库名称)、TAG(标签版本)、IMAGE ID(镜像 ID)、CREATED(创建时间)及 SIZE(镜像大小)等信息。

4、进入镜像环境

如需进入已加载的镜像环境,可使用以下命令:

docker run -it REPOSITORY:TAG

例如,若仓库名称为 spider,标签版本为 latest,则具体命令为:

docker run -it spider:latest

二、Docker镜像打包操作流程

1、创建Dockerfile文件

若需打包自定义镜像(以 ubuntu22.04 基础环境为例),建议通过 Dockerfile 文件进行构建。首先执行以下命令创建 Dockerfile 文件:

touch Dockerfile

然后将基础环境配置内容复制到该文件中。

Docker镜像打包

2、构建镜像操作

完成Dockerfile文件内容编辑后,在同一目录下执行以下命令构建镜像:

docker build -t spider2-ubuntu .

注意:若构建过程中出现网络失败问题,可能是由于国内部分源被限制所致。此时可参考以下配置方案(亲测有效):

创建或编辑 Docker 系统代理配置文件:

sudo mkdir -p /etc/systemd/system/docker.service.d
sudo nano /etc/systemd/system/docker.service.d/http-proxy.conf

在打开的文件中添加以下内容:

[Service]
Environment=”HTTP_PROXY=http://127.0.0.1:7890″
Environment=”HTTPS_PROXY=http://127.0.0.1:7890″
Environment=”NO_PROXY=localhost,127.0.0.1″

提示:请将上述地址和端口替换为实际使用的代理地址(如Clash监听的地址和端口)。

保存文件并退出编辑器,执行以下命令重新加载配置并重启Docker服务:

sudo systemctl daemon-reload
sudo systemctl restart docker

验证配置是否生效,可尝试拉取一个小镜像进行测试:

docker pull hello-world

3、运行容器操作

镜像构建完成后,可使用以下命令运行容器:

docker run -it spider-ubuntu

若需在容器内访问或编译本地代码,可通过 – v 选项挂载本地目录,示例如下:

docker run -it -v /home/jeff:/home spider-ubuntu

上述命令将本地 /home/jeff 目录挂载到容器的 /home 目录,以便在容器中访问本地代码。

4、Docker导出镜像

若在容器使用过程中需要安装额外库(如yaml-cpp库),可按以下步骤操作并重新打包镜像:

进入镜像环境并安装所需库(安装过程中请勿删除容器,否则需重新安装)。

Docker镜像打包

安装完成后,执行以下命令查看镜像ID:

docker images

使用以下命令提交修改后的容器为新镜像:

docker commit f59096ea53f1 yourname:latest

注意:请将f59096ea53f1替换为实际的IMAGE ID。

最后执行以下命令导出新镜像:

docker save -o spider.tar 15d963d26fab

注意:请将15d963d26fab替换为新镜像的IMAGE ID,导出的spider.tar文件可分享给其他用户使用。

  • 广告合作

  • QQ群号:4114653

温馨提示:
1、本网站发布的内容(图片、视频和文字)以原创、转载和分享网络内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。邮箱:2942802716#qq.com(#改为@)。 2、本站原创内容未经允许不得转裁,转载请注明出处“站长百科”和原文地址。