首页 > 其他分享 >containerd 像Docker一样丝滑操作镜像【转】

containerd 像Docker一样丝滑操作镜像【转】

时间:2024-01-24 15:04:44浏览次数:33  
标签:丝滑 ctr -- containerd image nginx 镜像 Docker

containerd 像Docker一样丝滑操作镜像

  • • 我们知道 Docker CLI 工具提供了需要增强用户体验的功能,containerd 同样也提供一个对应的 CLI 工具:ctr,不过 ctr 的功能没有 docker 完善,但是关于镜像和容器的基本功能都是有的。接下来我们就先简单介绍下 ctr 的使用。

➜  ~ ctr
NAME:
   ctr -
        __
  _____/ /______
 / ___/ __/ ___/
/ /__/ /_/ /
\___/\__/_/

containerd CLI


USAGE:
   ctr [global options] command [command options] [arguments...]

VERSION:
   v1.5.5

DESCRIPTION:

ctr is an unsupported debug and administrative client for interacting
with the containerd daemon. Because it is unsupported, the commands,
options, and operations are not guaranteed to be backward compatible or
stable from release to release of the containerd project.

COMMANDS:
   plugins, plugin            provides information about containerd plugins
   version                    print the client and server versions
   containers, c, container   manage containers
   content                    manage content
   events, event              display containerd events
   images, image, i           manage images
   leases                     manage leases
   namespaces, namespace, ns  manage namespaces
   pprof                      provide golang pprof outputs for containerd
   run                        run a container
   snapshots, snapshot        manage snapshots
   tasks, t, task             manage tasks
   install                    install a new package
   oci                        OCI tools
   shim                       interact with a shim directly
   help, h                    Shows a list of commands or help for one command

GLOBAL OPTIONS:
   --debug                      enable debug output in logs
   --address value, -a value    address for containerd's GRPC server (default: "/run/containerd/containerd.sock") [$CONTAINERD_ADDRESS]
   --timeout value              total timeout for ctr commands (default: 0s)
   --connect-timeout value      timeout for connecting to containerd (default: 0s)
   --namespace value, -n value  namespace to use with commands (default: "default") [$CONTAINERD_NAMESPACE]
   --help, -h                   show help
   --version, -v                print the version

镜像操作

拉取镜像

  • • 拉取镜像可以使用 ctr image pull 来完成,比如拉取 Docker Hub 官方镜像 nginx:alpine,需要注意的是镜像地址需要加上 docker.io Host 地址:

# ctr image pull docker.io/library/nginx:alpine
也可以使用 --platform 选项指定对应平台的镜像。当然对应的也有推送镜像的命令 ctr image push,如果是私有镜像则在推送的时候可以通过 --user 来自定义仓库的用户名和密码。

列出本地镜像

# ctr image ls

# ctr image ls -q

使用 -q(--quiet) 选项可以只打印镜像名称

检测本地镜像

ctr image check
REF                            TYPE                                                      DIGEST                                                                  STATUS         SIZE            UNPACKED
docker.io/library/nginx:alpine application/vnd.docker.distribution.manifest.list.v2+json sha256:bead42240255ae1485653a956ef41c9e458eb077fcb6dc664cbc3aa9701a05ce complete (7/7) 9.5 MiB/9.5 MiB true
# 主要查看其中的 STATUS,complete 表示镜像是完整可用的状态。

重新打标签

  • • 同样的我们也可以重新给指定的镜像打一个 Tag:

# ctr image tag docker.io/library/nginx:alpine harbor.k8s.local/course/nginx:alpine
harbor.k8s.local/course/nginx:alpine
# ctr image ls -q
docker.io/library/nginx:alpine
harbor.k8s.local/course/nginx:alpine

删除镜像

# ctr image rm harbor.k8s.local/course/nginx:alpine
harbor.k8s.local/course/nginx:alpine
# ctr image ls -q
docker.io/library/nginx:alpine

加上 --sync 选项可以同步删除镜像和所有相关的资源。

将镜像导出为压缩包

# ctr image export nginx.tar.gz docker.io/library/nginx:alpine

从压缩包导入镜像

ctr image import nginx.tar.gz

Containerd 像Docker一样丝滑操作镜像
https://mp.weixin.qq.com/s/fwwjeVUEY01ZZy6RlQELnA

标签:丝滑,ctr,--,containerd,image,nginx,镜像,Docker
From: https://www.cnblogs.com/paul8339/p/17984661

相关文章

  • 绿联DH2600 docker基本命令
    查看容器(运行中的Containers)dockerps或dockercontainerls查看所有容器dockerps-a或dockercontainerls--all进入容器(ubuntu系统)dockerexec-it容器id/bin/bash或dockerattach容器id注:attach进入后exit退出会关闭容器。可以通过:ctrl+P+Q挂起容......
  • 绿联DH2600配置如何进入docker内部
    前提:已经能ssh进入绿联、已经成功运行docker容器已进入dockerhome-assistant为例查看当前docker运行容器dockerps输出:root@UGREEN-3822:~#dockerpsCONTAINERIDIMAGECOMMANDCREATEDSTATUS......
  • Docker部署Prometheus监控
    1.拉取所需的镜像dockerpullprom/node-exporter #用于机器系统数据收集dockerpullprom/mysqld-exporter #用于MySQL数据库数据收集dockerpullgoogle/cadvisor #用于收集宿主机上的docker容器数据dockerpullprom/prometheus #监控&报警&时间序列......
  • 小白使用Docker实现每周「自动领取」 Epic 免费游戏
    每周的epic免费游戏,已经成了我的快乐源泉!游戏可以不玩,但是不可以不领!白嫖的快乐,懂得都懂......
  • centos7.6使用docker搭建dnf私服
    服务端:1:配置SWAP虚拟内存1.1查看虚拟内存swapon--show1.2创建SWAP#创建一个文件并设置为swapfallocate-l8G/swapfilechmod600/swapfilemkswap/swapfileswapon/swapfilenano/etc/fstab#在最后一行粘贴以下内容,然后按Crtl+X,再按Y,然后回车/swap......
  • docker安装pg(postgresql)
    拉取镜像dockerpullpostgres:15.5创建本地卷或创建挂载目录(/docker/postgresql/data)dockervolumecreatepgdata数据卷可以在容器之间共享和重用,默认会一直存在,即使容器被删除(dockervolumeinspectpgdata可查看数据卷的本地位置,如果使用该方式创建可查看创建成功......
  • Docker Net 老版本升级到新版本 Docker Build报错
    #net8使用,正常从net3.1直接升级到8FROMmcr.microsoft.com/dotnet/sdk:8.0ASbuildFROMmcr.microsoft.com/dotnet/runtime:latestFROMbuildWORKDIR/appCOPY/./appRUNdotnetrestoreRUNdotnetpublish-o/out-cReleaseEXPOSE5000ENTRYPOINT["dotnet"......
  • docker部署es,kibana
    es安装创建网络【需要部署kibana容器为了互联】dockernetworkcreatees-net拉取镜像dockerpullelasticsearch:7.14.2创建挂载点目录mkdir-p/usr/local/es/data/usr/local/es/config/usr/local/es/plugins修改权限chmod777/usr/local/es/datachmod777......
  • Docker基本管理
    DockerDocker概述容器引擎Docker是一个开源的应用容器引擎,基于go语言开发并遵循了apache2.0协议开源。Docker是在Linux容器里运行应用的开源工具,是一种轻量级的“虚拟机”。Docker的容器技术可以在一台主机上轻松为任何应用创建一个轻量级的、可移植的、自给自足的容器。......
  • [转帖]Docker最佳实践:5个方法精简镜像
    https://juejin.cn/post/6844903880526921741  精简Docker镜像的好处很多,不仅可以节省存储空间和带宽,还能减少安全隐患。优化镜像大小的手段多种多样,因服务所使用的基础开发语言不同而有差异。本文将介绍精简Docker镜像的几种通用方法。精简Docker镜像大小的必要性Doc......