containerd基本使用

avatar 2022年12月7日18:00:00 评论 1,103 次浏览

随着kubernetes的新版本的更新迭代,docker已经被containerd替换掉了,containerd的优势这里就不过多的描述,这里主要说一下containerd的基本使用,containerd和docker一样都是容器,只是在使用的时候命令不太一样,这里主要说一下containerd使用的常用命令。安装就不做过多的描述了,看一下下面安装方法:

  1. [wolf@wulaoer.org 🔥🔥🔥🔥 ~ ]$ sed -i 's+download.docker.com+mirrors.aliyun.com/docker-ce+' /etc/yum.repos.d/docker-ce.repo
  2. [wolf@wulaoer.org 🔥🔥🔥🔥 ~ ]$ yum makecache fast
  3. # 2.安装containerd
  4. [wolf@wulaoer.org 🔥🔥🔥🔥 ~ ]$ yum install containerd -y
  5. [wolf@wulaoer.org 🔥🔥🔥🔥 ~ ]$ containerd --version # 查看containerd版本
  6. # 3.启动containerd
  7. [wolf@wulaoer.org 🔥🔥🔥🔥 ~ ]$ systemctl start containerd && systemctl enable containerd && systemctl status containerd

Containerd和docker一样也有镜像源,也需要在containerd的配置文件中进行修改。

  1. # 直接生产默认配置文件:containerd config default > /etc/containerd/config.toml
  2. [wolf@wulaoer.org 🔥🔥🔥🔥 ~ ]$ vim /etc/containerd/config.toml
  3. [plugins]
  4. [plugins.cri]
  5. [plugins.cri.registry]
  6. [plugins.cri.registry.mirrors]
  7. [plugins.cri.registry.mirrors."docker.io"]
  8. endpoint = ["https://pft7f97f.mirror.aliyuncs.com","https://docker.mirrors.ustc.edu.cn"]
  9. [plugins.cri.registry.mirrors."gcr.io"]
  10. endpoint = [
  11. "https://gcr.mirrors.ustc.edu.cn"
  12. ]
  13. [plugins.cri.registry.mirrors."k8s.gcr.io"]
  14. endpoint = [
  15. "https://gcr.mirrors.ustc.edu.cn/google-containers/"
  16. ]
  17. [plugins.cri.registry.mirrors."quay.io"]
  18. endpoint = [
  19. "https://quay.mirrors.ustc.edu.cn"
  20. ]
  21. [wolf@wulaoer.org 🔥🔥🔥🔥 ~ ]$ systemctl daemon-reload && systemctl restart containerd && systemctl status containerd
  22. # 5.开启包转发功能和修改内核参数
  23. [wolf@wulaoer.org 🔥🔥🔥🔥 ~ ]$ net.ipv4.ip_forward = 1
  24. [wolf@wulaoer.org 🔥🔥🔥🔥 ~ ]$ net.bridge.bridge-nf-call-ip6tables = 1
  25. [wolf@wulaoer.org 🔥🔥🔥🔥 ~ ]$ net.bridge.bridge-nf-call-iptables = 1
  26.  
  27. 参数生效:sysctl -p
  28. 查看: lsmod | grep br_netfilter

如果需要使用私有镜像可以在containerd的配置里设置镜像仓库的用户名和密码即可。

  1. [wolf@wulaoer.org 🔥🔥🔥🔥 ~ ]$ vim /etc/containerd/config.toml
  2. [plugins."io.containerd.grpc.v1.cri".registry.auths]
  3. username = "admin"
  4. password = "Harbor12345"
  5.  
  6. [plugins."io.containerd.grpc.v1.cri".registry.configs]
  7. insecure_skip_verify = true
  8.  
  9. [plugins."io.containerd.grpc.v1.cri".registry.headers]
  10.  
  11. [plugins."io.containerd.grpc.v1.cri".registry.mirrors]
  12. [plugins."io.containerd.grpc.v1.cri".registry.mirrors."docker.io"]
  13. endpoint = ["https://pft7f97f.mirror.aliyuncs.com","https://docker.mirrors.ustc.edu.cn","http://hub-mirror.c.163.com"]
  14. [plugins."io.containerd.grpc.v1.cri".registry.mirrors."192.168.10.12"]
  15. endpoint = ["https://192.168.10.12/"]
  16. 第二中方式:
  17. [plugins]
  18. [plugins.cri]
  19. [plugins.cri.registry]
  20. [plugins.cri.registry.mirrors]
  21. [plugins.cri.registry.mirrors."docker.io"]
  22. endpoint = ["https://pft7f97f.mirror.aliyuncs.com","https://docker.mirrors.ustc.edu.cn"]
  23. [plugins.cri.registry.mirrors."gcr.io"]
  24. endpoint = [
  25. "https://gcr.mirrors.ustc.edu.cn"
  26. ]
  27. [plugins.cri.registry.mirrors."k8s.gcr.io"]
  28. endpoint = [
  29. "https://gcr.mirrors.ustc.edu.cn/google-containers/"
  30. ]
  31. [plugins.cri.registry.mirrors."quay.io"]
  32. endpoint = [
  33. "https://quay.mirrors.ustc.edu.cn"
  34. ]
  35. [plugins.cri.registry.mirrors."192.168.10.12"]
  36. endpoint = ["http://192.168.10.12"]
  37. [plugins.cri.registry.configs."192.168.10.12".auth]
  38. username = "admin"
  39. password = "Harbor12345"

containerd基本操作命令

  1. 命令介绍:
  2. ctr:是containerd本身的CLI
  3. crictl :是Kubernetes社区定义的专门CLI工具
  4. 1.查看本地镜像列表
  5. [wolf@wulaoer.org 🔥🔥🔥🔥 ~ ]$ ctr images list 或者 crictl images
  6. 查看导入的镜像
  7. [wolf@wulaoer.org 🔥🔥🔥🔥 ~ ]$ ctr images ls
  8. 列表名称:
  9. REF TYPE DIGEST SIZE PLATFORMS LABELS
  10. 2.下载镜像命令
  11. [wolf@wulaoer.org 🔥🔥🔥🔥 ~ ]$ ctr images pull docker.io/rancher/mirrored-pause
  12. # 3.上传命令
  13. [wolf@wulaoer.org 🔥🔥🔥🔥 ~ ]$ ctr images tag docker.io/docker/alpine:latest host/test/alping:v1
  14. [wolf@wulaoer.org 🔥🔥🔥🔥 ~ ]$ ctr images pull host/test/alping:v1
  15. # 4.导入/导出本地镜像
  16. [wolf@wulaoer.org 🔥🔥🔥🔥 ~ ]$ ctr images import app.tarctr images exporter
  17. [wolf@wulaoer.org 🔥🔥🔥🔥 ~ ]$ ctr i ls -q
  18. docker.io/library/busybox:1.28
  19. docker.io/library/tomcat:8.5-jre8-alpine
  20. # 导出
  21. [wolf@wulaoer.org 🔥🔥🔥🔥 ~ ]$ ctr i export busybox-1.28.tar.gz docker.io/library/busybox:1.28
  22. # 删除
  23. [wolf@wulaoer.org 🔥🔥🔥🔥 ~ ]$ ctr i rm docker.io/library/busybox:1.28
  24. docker.io/library/busybox:1.28
  25. # 导入
  26. [wolf@wulaoer.org 🔥🔥🔥🔥 ~ ]$ ctr i import busybox-1.28.tar.gz
  27. unpacking docker.io/library/busybox:1.28 (sha256:585093da3a716161ec2b2595011051a90d2f089bc2a25b4a34a18e2cf542527c)...done
  28. # 查看容器名称列表
  29. [wolf@wulaoer.org 🔥🔥🔥🔥 ~ ]$ ctr i ls -q
  30. docker.io/library/busybox:1.28
  31. docker.io/library/tomcat:8.5-jre8-alpine
  32. # 5.显示运行的容器列表
  33. [wolf@wulaoer.org 🔥🔥🔥🔥 ~ ]$ crictl ps
  34. # 6.删除本地镜像ctr images ls
  35. [wolf@wulaoer.org 🔥🔥🔥🔥 ~ ]$ crictl rmi # 没生效可以使用下面这个ctr i rm REF名称# 7. 查看容器资源情况
  36. [wolf@wulaoer.org 🔥🔥🔥🔥 ~ ]$ crictl stats# 8.登录容器平台crictl exec# 9.容器启动和停止crictl start/stop# 10.查看容器日志crictl logs
  37. [wolf@wulaoer.org 🔥🔥🔥🔥 ~ ]$ ctr image --help
  38. NAME:
  39. ctr images - manage images
  40.  
  41. USAGE:
  42. ctr images command [command options] [arguments...]
  43.  
  44. COMMANDS:
  45. check check existing images to ensure all content is available locally
  46. export export images
  47. import import images
  48. list, ls list images known to containerd
  49. mount mount an image to a target path
  50. unmount unmount the image from the target
  51. pull pull an image from a remote
  52. push push an image to a remote
  53. delete, del, remove, rm remove one or more images by reference
  54. tag tag an image
  55. label set and clear labels for an image
  56. convert convert an image

containerd的使用方法目前就介绍这么多了,后期如果有更新就在补充,这里总结一下docker和containerd的使用是一样的,只是命令不太一样,只需要记住区别之处即可,后面如果经常使用的话就会慢慢的习惯。

avatar

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen:

滑动解锁才能提交