Docker-基础指令

这篇具有很好参考价值的文章主要介绍了Docker-基础指令。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

前置知识

docker官网地址:https://www.docker.com/
docker镜像地址:https://hub.docker.com/

docker安装教程:https://docs.docker.com/engine/install/centos/
安装只需要注意将仓库源改为国内就好,推荐去阿里云注册自己的账号获得加速地址:

sudo yum-config-manager \
    --add-repo \
   http://mirrors.aliyun.com/ docker-ce/linux/centos/docker-ce.repo

docker 的基本组成 :镜像,容器,仓库

Docker运行的基本流程为:
1 用户是使用Docker Client与Docker Daemon建立通信,并发送请求给后者。
2 Docker Daemon作为Docker架构中的主体部分,首先提供Docker Server的功能使其可以接受Docker Client的请求。
3 Docker Engine执行Docker内部的一系列工作,每-项工作都是以一个Job的形式的存在。
4 Job的运行过程中,当需要容器镜像时,则从Docker Registry中下载镜像,并通过镜像管理驱动Graph driver将下载镜像以Graph的形式存
5 当需要为Docker创建网络环境时,通过网络管理驱动Network driver 创建并配置Docker容器网络环境。
6 当需要限制Docker容器运行资源或执行用户指令等操作时,则通过Exec driver来完成。
7 Libcontainer是一项独 立的容器管理包,Network driver以及Exec driver都是通过Libcontainer来实现具体对容器进行的操作。

基础篇

命令

  • systemctl docker 指令
#启动docker
systemctl start docker 
#停止docker
systemctl stop docker  
#重启docker
systemctl restart docker 
#查看docker状态
systemctl status docker  
#开机自启动
systemctl enable docker  
  • docker 基础指令
docker version #查看版本
docker info #查看docker 的信息
#这两条指令是等价的
docker container ls #查看正在运行的容器
docker ps  #查看正在运行的容器
docker ps -a #列出所有的容器包含退出的容器
docker create [镜像] #创建出容器并申请资源,但是没有运行需要docker start进行执行;docker run 这个指令包含了这两步的操作
docker logs -f ${container id} | ${container} #监控日志
#优雅的退出
docker stop <container id>
#立即退出
docker kill <container id>
#和docker 内部交互 已reids为例子
docker exec -it redis | <container id> redis-cli
#直接进入docker内部
docker exec -it redis | <container id> /bin/bash 

关于docker
-i 代表使用interactive交互模式
-t 代表模拟tty功能。TTY 代表TeleTYpewriter电报打字机,代表着我们的终端。-t参数会启动终端的一些功能。文章来源地址https://www.toymoban.com/news/detail-794534.html

  • 镜像(images)
#搜索是否有mysql镜像
docker search mysql 
#查找用的最多的镜像top5
docker search --limit 5 mysql 
#拉取一个镜像
docker pull ubuntu:20.04
#将镜像推送到仓库
docker image push demo:2.0
#查看镜像/容器的数据卷大小
docker system df 
#列出本地所有镜像
docker images
#删除镜像ubuntu:20.04
docker image rm ubuntu:20.04 
docker rmi ubuntu:20.04
#创建某个container的镜像 参数分别容器或容器ID 版本号
docker commit redis redis:comm #images 会多一个 redis:comm
#将镜像ubuntu:20.04导出到本地文件ubuntu_20_04.tar
docker save -o ubuntu_20_04.tar ubuntu:20.04
#将镜像ubuntu:20.04从本地文件ubuntu_20_04.tar中加载出来
docker load -i ubuntu_20_04.tar
#查看镜像的源信息
docker image inspect redis
#虚悬镜像
#虚悬镜像就是没有仓库和tag的镜像。
```bash
docker images ls -f dangling=true  列出虚悬镜像
docker image prune 删除虚悬镜像
Docker-基础指令,docker &amp;&amp; k8s &amp;&amp; devops,docker,容器,运维,基础指令

- 容器(container)
```shell
# 创建一个镜像的容器但是并不会启动需要使用 docker start 进行后续的启动
docker  create  redis
# 查看本地的所有容器
docker ps -a
#启动容器
docker  start <container id> | name #| 表示或者写容器的名称
#停止容器
docker  stop <container id> | name
#重启容器
docker  restart <container id> | name
#创建并启动一个容器
docker  run -itd ubuntu:20.04
#删除容器
docker  rm  <container id> | name
#删除所有已停止的容器
docker container prune
# 查看容器的信息
docker inspect <container id> 
#将容器CONTAINER导出到本地文件xxx.tar.gz中
docker export -o <container id> | name
#将本地文件xxx.tar导入成镜像,并将镜像命名为image_name:tag
docker import -o redis.tar.gz  redis:custom

docker export/import与docker save/load的区别:
export/import会丢弃历史记录和元数据信息,仅保存容器当时的快照状态
save/load会保存完整记录,体积更大

#查看某个容器内的所有进程
docker top <container id> | name 
#查看所有容器的统计信息,包括CPU、内存、存储、网络等信息
docker stats
#在本地和容器间复制文件
docker cp xxx CONTAINER:xxx 或 docker cp CONTAINER:xxx xxx
#将reids中的/data/dump.rdb 复制到本地
docker cp redis:/data/dump.rdb ./ 
#将demo.txt 复制到redis 目录/data中
docker cp  demo.txt  redis:/data
#重命名容器
docker rename redis newredis
#修改容器限制
docker update CONTAINER --memory 600MB
#这样就可以提交当前的容器为镜像存到镜像仓库中,相当于对原来的镜像做了拓展
docker commit -m "提交描述信息" 容器id  demo:1.0  
#过滤容器
docker ps -a -f 'exited=137'
#组合使用
docker rm $(docker ps -a -f 'exited=137');
docker stop $(docker ps -a -f 'exited=137');

到了这里,关于Docker-基础指令的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

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

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

相关文章

  • 容器技术之Docker&K8S

    区别:1、k8s是一种开放源码的容器集群管理系统,而Docker是一种开放源码的应用容器引擎;2、k8s是一套自动化部署工具,可以管理docker容器是容器编排层面的,docker是容器化技术,是容器层面的。 Docker本身并不是容器,它是创建容器的工具,是应用容器引擎。一句话总结就

    2024年02月08日
    浏览(27)
  • golang/云原生/Docker/DevOps/K8S/持续 集成/分布式/etcd 教程

    3-6个月帮助学员掌握golang后端开发岗位必备技术点 教程时长: 150+小时 五大核心专栏,原理+源码+案例分析+项目实战直击工作岗位 golang:解决go语言编程问题 工程组件:解决golang工程化问题 分布式中间件:解决技术栈单一及分布式开发问题 云原生:解决云原生分布式部署及监

    2024年02月07日
    浏览(31)
  • K8S:K8S自动化运维容器Docker集群

    (1)K8S全程为Kubernetes,由于K到S直接有8个字母简称为K8S。 (2)版本:目前一般是1.18~1.2.0,后续可能会到1.24-1.26,1.24版本后丢弃了docker(如需要使用需要第三方插件配合),目前最新版本是1.27 (3)官网:https://kubernetes.io GitHub:GitHub - kubernetes/kubernetes: Production-Grade Container S

    2024年02月10日
    浏览(29)
  • docker在k8s容器中的作用,以及docker的底层原理,以及k8s的常用命令

        Docker的设计思想就是创建软件程序可移植性的轻量级容器,让其可以在任何安装了Docker的机器上,不用关心底层操作系统,就可以运行开发程序,就像集装箱一样使用。 Docker 是一个开源的应用容器引擎,基于 Go 语言 并遵从Apache2.0协议开源。 Docker 可以让开发者打包他们

    2024年04月27日
    浏览(26)
  • K8S:K8S自动化运维容器化(Docker)集群程序

    目录 一、K8S概述 1、什么是K8S 2、为什么要用K8S 3、作用及功能 二、K8S的特性 1、弹性伸缩 2、自我修复 3、服务发现和复制均衡 5、自动发布和回滚 6、集中化配置管理和秘钥管理 7、存储编排 8、任务批量处理运行 三、K8S的集群架构 四、K8S的核心组件 1、Master组件 ①Kube-apis

    2024年02月12日
    浏览(23)
  • 容器技术,1. Docker,2. Kubernetes(K8s):

    目录 容器技术 1. Docker: 2. Kubernetes(K8s): Docker和Kubernetes 容器的主要应用场景有哪些? 有效的将单个操作系统的资源划分到孤立的组中,以便更好的在孤立的组之间平衡有冲突的资源使用需求,这种技术就是容器技术。 容器技术指通过在物理主机操作系统上创建一个一个

    2024年02月11日
    浏览(26)
  • 容器化(Docker、K8S)部署Elasticsearch + Kibana

    ElasticSearch简介 本次实验目标 实验环境 Docker部署Elasticsearch + Kibana 安装中文分词器插件,配置认证 基本操作 在华为云CCE中部署 使用Logstash进行数据迁移

    2024年01月19日
    浏览(29)
  • K8S容器运行时从Docker切换为Containerd

    K8S从1.24版本起不再支持docker容器引擎,可选的替代品有 containerd 、 cri-o 、 podman 。下面演示将单个node节点的容器引擎从docker切换为containerd的过程。 检查是否已经加载内核模块 overlay 和 br_netfilter 。 如果没有,手动加载内核模块: 检查系统内核参数: 如果没有开启,手动调

    2024年02月09日
    浏览(38)
  • 容器的崛起——Docker与K8s的相爱相杀

    对于K8s启用docker,作为普通开发者的体感是,k8s不就是docker的集群操作吗?k8s弃用docker就像鱼反对水一样不可思议,那么这两个技术究竟是什么关系,Kubernetes 是如何一步步与 Docker 解耦的,请看下文。 向应用代码隐藏分布式架构复杂度、让分布式架构得以成为一种能够普遍

    2023年04月08日
    浏览(21)
  • ​k8s 1.24 1.25 集群使用docker作为容器

    背景 在新版本Kubernetes环境(1.24以及以上版本)下官方不在支持docker作为容器运行时了,若要继续使用docker 需要对docker进行配置一番。需要安装cri-docker作为Kubernetes容器 查看当前容器运行时 安装docker 安装cri-docker 为kubelet配置容器运行时 关于 https://www.oiox.cn/ https://www.oiox.cn

    2024年02月12日
    浏览(31)

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

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

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

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

二维码1

领取红包

二维码2

领红包