【云原生 | Docker篇】Docker镜像(image)与服务

这篇具有很好参考价值的文章主要介绍了【云原生 | Docker篇】Docker镜像(image)与服务。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

docker image: hmai:g7_server_v7,云原生,docker,云原生,容器

🪐Docker镜像操作

镜像是Docker的三大组件之一。
Docker运行容器前需要本地存在对应的镜像,如果本地不存在,Docker会从镜像仓库下载。
下面主要从以下几个方面来了解docker镜像:

  • 从仓库获取镜像
  • 管理本地仓库的镜像

Docker命令使用

获取命令行帮助信息直接在命令行内输入docker命令后敲回车

📌查找镜像

我们可以从 Docker Hub网站来搜索镜像,Docker Hub网址为: https://hub.docker.com/

我们也可以使用docker search命令来搜索镜像。比如我们需要一个tomcat的镜像来作为我们的web服务。我们可以通过docker search命令搜索tomcat来寻找适合我们的镜像。

docker image: hmai:g7_server_v7,云原生,docker,云原生,容器
举个栗子

docker search tomcat

docker image: hmai:g7_server_v7,云原生,docker,云原生,容器

  • NAME: 镜像名称;
  • DESCRIPTION: 镜像描述;
  • OFFICIAL: 是否 Docker 官方发布;
  • STARS: 点赞数;
  • AUTOMATED: 自动构建。

📌镜像列表

想要查看已经下载的镜像,可以使用docker images ls命令

[root@localhost ~]# docker images   # docker images ls

docker image: hmai:g7_server_v7,云原生,docker,云原生,容器

其中列表包含了仓库名版本号(标签)、镜像ID创建时间以及镜像大小

镜像ID则是镜像的唯一标识,一个镜像可以对应多个标签。因此,如果两个镜像拥有相同的ID,说明它们对应的是同一个镜像。

镜像体积

  • 如果仔细观察,会注意到,这里标识的所占用空间和在Docker Hub上看到的镜像大小不同。这是因为Docker Hub中显示的体积是压缩后的体积。在镜像下载和上传过程中镜像是保持着压缩状态的,因此 DockerHub所显示的大小是网络传输中更关心的流量大小。而docker image ls 显示的是镜像下载到本地后,展开的大小,准确说,是展开后的各层所占空间的总和,因为镜像到本地后,查看空间的时候,更关心的是本地磁盘空间占用的大小。
  • 另外一个需要注意的问题是,docker image ls列表中的镜像体积总和并非是所有镜像实际硬盘消耗。由于Docker镜像是多层存储结构,并且可以继承、复用,因此不同镜像可能会因为使用相同的基础镜像,从而拥有共同的层。由于Docker使用Union FS,相同的层只需要保存一份即可,因此实际镜像硬盘占用空间很可能要比这个列表镜像大小的总和要小的多。

📌获取镜像

之前提到过,Docker Hub上有大量的高质量的镜像可以用,这里我们就说一下怎么获取这些镜像。

从 Docker镜像仓库获取镜像的命令是docker pull其命令格式为:

docker pull [选项] [Docker Registry 地址[:端口号]/] 镜像名称[:版本号]
具体的选项可以通过docker pull --help命令看到,这里我们说一下镜像名称的格式。
- Docker 镜像仓库地址:―地址的格式一般是〈<域名/IP>[:端口号]。默认地址是 Docker Hub。
-仓库名:这里的仓库名是两段式名称,即<用户名>/<软件名>。
对于Docker Hub,如果不给出用户名,则默认为library,也就是官方镜像。

举个栗子

我们需要一个tomcat的镜像来作为我们的web服务,就可以通过 docker pull 获取镜像。

# docker pull tomcat:版本号
docker pull tomcat   # 不指定版本号,默认获取latest版本

docker image: hmai:g7_server_v7,云原生,docker,云原生,容器

📌删除镜像

删除本地镜像的命令是docker rmi 其命令格式为:

docker rmi [选项] <镜像1> [<镜像2>...]

用镜像ID、镜像名、摘要删除镜像
其中,镜像ID可以是部分镜像ID、完整镜像ID、镜像名或者镜像摘要

如果要删除本地的镜像,可以使用 docker rmi 命令

docker rmi 镜像ID # 删除本地指定镜像

删除镜像之前必须确认该镜像没有被任何容器使用
docker image: hmai:g7_server_v7,云原生,docker,云原生,容器
删除所有镜像

# 查看本地所有镜像的 IMAGE ID
docker images -q  
# 根据镜像ID删除所有镜像
docker rmi `docker images -q`

docker image: hmai:g7_server_v7,云原生,docker,云原生,容器

📌保存镜像

备份本地仓库的镜像
1、用 save 命令将本地镜像保存到当前目录下

docker save -o 导出的路径及名称 镜像名称
# 举个栗子
docker save -o tomcat.tar 镜像名称

2、将本地目录下的镜像备份文件导入到本地的docker仓库

# 命令1:
docker load -i tomcat.tar
# 命令2:
docker load < tomcat.tar

具体操作步骤如下:

  1. 首先保存镜像,然后删除该镜像。

docker image: hmai:g7_server_v7,云原生,docker,云原生,容器

  1. 然后将刚才的备份文件导入本地docker仓库,之后就可以继续使用 tomcat 了!

docker image: hmai:g7_server_v7,云原生,docker,云原生,容器
修改镜像名称

docker tag 镜像id 新镜像名称:版本号
# 举个栗子
docker tag fe helloworld:1

docker image: hmai:g7_server_v7,云原生,docker,云原生,容器

🪐Docker服条相关命令

  • 启动docker服务:
systemctl start docker
  • 停止docker服务:
systemctl stop docker
  • 重启docker服务:
systemctl restart docker
  • 查看docker服务状态:
systemctl status docker
  • 设置开机启动docker服务:
systemctl enable docker

docker image: hmai:g7_server_v7,云原生,docker,云原生,容器文章来源地址https://www.toymoban.com/news/detail-784391.html

到了这里,关于【云原生 | Docker篇】Docker镜像(image)与服务的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 『 云原生·Docker』初识Docker镜像与Docker镜像操作(一)

    本系列主要分为以下六大部分,正在更新中,尽请期待! 『 云原生·生之门』 『 云原生·前置知识』 『 云原生·Docker』 『 云原生·Kubernetes』 『 云原生·KubeSphere』 『 云原生·DevOps』 🚩点击关注本专栏 提示:已经更新的或正在更新的文章前面打勾了哈! 镜像是Docker三大核心

    2024年02月06日
    浏览(45)
  • 【加速排坑】docker设置国内image镜像源

    第零步,查看阿里最新的镜像源:https://cr.console.aliyun.com/cn-hangzhou/instances/mirrors 第一步:在 /etc/docker/daemon.json 中添加镜像源 第二步:重启docker 到此就ok了,我们可以查一下docker的镜像源是否加载成功: 倒数第几行显示为: 常见错误:添加的镜像源不可用,比如中科大USTC的

    2024年01月17日
    浏览(64)
  • 【云原生|Docker】Docker镜像操作

    作者:柒号华仔 个人主页:欢迎访问我的主页 个人信条:星光不问赶路人,岁月不负有心人。 个人方向:主要方向为5G,同时兼顾其他网络协议,编解码协议,C/C++,linux,云原生等,感兴趣的小伙伴可以关注我,一起交流。 Docker 镜像(Image)是用于创建 Docker 容器的模板。Doc

    2024年02月03日
    浏览(43)
  • K8S Containerd导入Docker image镜像

    Kubernetes在v1.20 版本宣布弃用 Dockershim (在v1.24正式移除),改用CRI接口去操作更为基础的containerd或CRI-O。 K8S在创建容器时,或多或少有些镜像无法正常拉取(网络等原因)。 还在使用 Docker Engine 时我们能方便的pull第三方同步的镜像,然后tag成需要的标签版本,让K8S从本地获

    2024年02月11日
    浏览(44)
  • 【Docker】虚悬镜像(Dangling Image)介绍和处理方法

    虚悬镜像 (Dangling Image) 指的是仓库名 (镜像名) 和标签 TAG 都是 none 的镜像。如下图所示。 在实际开发中,在构建或者删除镜像时出错会有一定概率出现虚悬镜像。虚悬镜像在实际开发中产生概率不高,然而,一旦虚悬镜像生成,就可能对你的系统造成一些潜在的风险。因此,

    2024年02月06日
    浏览(39)
  • 【云原生】Docker 详解(三):Docker 镜像管理基础

    镜像可以理解为应用程序的集装箱,而 Docker 用来装卸集装箱。 Docker 镜像含有启动容器所需要的文件系统及其内容,因此,其用于创建并启动容器。 Docker 镜像采用分层构建机制,最底层为 bootfs ,其上为 rootfs 。 bootfs :用于系统引导的文件系统,包括 bootloader 和 kernel ,容

    2024年02月13日
    浏览(83)
  • 【云原生丶Docker】Docker镜像常用命令大全

    镜像是Docker中最为核心也是最具创造性的概念!在理解Docker的核心概念文章中,我们理解了镜像的含义,下面让我们一起操作一些镜像,包括拉取、推送镜像等操作。 通过 docker image help 查看 Docker 支持的镜像命令有哪些。 通过 docker pull 命令拉取镜像。 镜像由镜像名字和标签

    2024年02月11日
    浏览(55)
  • 云原生Docker镜像管理

    docker是一个go语言开发的应用容器引擎。 ①运行容器里的应用; ②docker是用来管理容器和镜像的一种工具。 #容器 与 虚拟机 的区别? 容器 虚拟机 所有容器共享宿主机内核 每个虚拟机都有独立的操作系统和内核 使用namespace隔离资源,使用cgroup限制资源的最大使用量 完全隔

    2024年02月08日
    浏览(40)
  • Docker基本操作之删除容器Container和删除镜像IMAGE

    1.1 删除容器Container语法 1.2 删除容器Container 操作 删除容器Container使用docker rm 命令,例如删除mysql容器: 1.3 docker ps docker ps 语法: docker ps 各个参数的说明: 2.1 删除镜像IMAGE语法 删除镜像IMAGE使用 docker rmi 命令,例如删除 mysql 镜像: 2.2 docker images 各个参数的说明: 2.3 强制删

    2024年02月14日
    浏览(48)
  • 【云原生】Docker镜像的创建

    创建镜像有三种方法,分别为【基于已有镜像创建】、【基于本地模板创建】以及【基于Dockerfile创建】。 (1)首先启动一个镜像,在容器里做修改  docker run -it --name web centos:7 /bin/bash     #启动容器  ​  yum install -y epel-release  #安装epel源  yum install -y nginx         #安装ng

    2024年02月03日
    浏览(42)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包