Docker基础命令(快速入门)

2023-11-10

这是一个关于docker的快速入门教程,仅包含了docker操作的基础命令。

一、docker服务相关

docker 服务管理使用的是systemctl命令,Linux下的服务都可以按照以下方式进行管理。

  1. 查看docker服务是否启动 systemctl status docker
  2. 启动docker服务 systemctl start docker
  3. 停止docker服务 systemctl stop docker
  4. 重启docker服务systemctl restart docker
  5. 设置docker服务开机自启动systemctl enable docker
  6. 查看docker版本docker -v
  7. 查看docker系统信息docker info

二、docker镜像管理

  1. 查看docker镜像列表

    docker images
    docker image ls
  2. 将镜像保存为文件

    docker save -o 文件名   镜像名
    docker save -o centos8.tar centos:latest
  3. 导入保存的镜像文件

    docker load -i 文件名
    docker load -i centos8.tar
  4. 从镜像仓库中拉取或者更新指定镜像

    docker pull [OPTIONS] NAME[:TAG|@DIGEST] 
    docker pull centos  # 拉取centos镜像
  5. 删除镜像,同时删除多个镜像时镜像名称或id用空格分隔

    docker rmi [OPTIONS] IMAGE [IMAGE...]
  6. 标记本地镜像,将其归入某一仓库

    docker tag SOURCE_IMAGE[:TAG] TARGET_IMAGE[:TAG]
     docker tag hello-world:latest  ay-a/hello:0.1
  7. 将镜像推送到镜像仓库

    docker push [OPTIONS] NAME[:TAG]
    docker push  myimages:0.1
  8. docker build使用 Dockerfile 创建镜像(这里不具体介绍Dockerfile)

    # 命令格式如下,选项很多,可以通过 docker build --help 查看
    docker build [OPTIONS] PATH | URL | - 
    
    #使用当前目录的 Dockerfile 创建镜像,标签为 testimages/test:v1
    docker build -t testimages/test:v1 .

三、docker 容器生命周期管理

  1. docker create 创建一个容器但不启动它

    #命令格式
    docker create [OPTIONS] IMAGE [COMMAND] [ARG...]
    
    #使用 hello-world:latest创建一个名称为 test 的容器
    docker create  --name test hello-world:latest
  2. docker run 创建并运行一个新的容器

    #命令格式
    docker run [OPTIONS] IMAGE [COMMAND] [ARG...]
    
    #使用 hello-world:latest创建一个名称为 test 的容器并运行
     docker run  --name test hello-world:latest
  3. docker start 启动一个或多个已经停止的容器

    #启动id为 cea968a92c01 的容器
    docker start cea968a92c01
  4. docker stop 停止正在运行中的容器

    #停止id为 cea968a92c01 的容器
    docker stop cea968a92c01
  5. docker restart 重启容器

    #重启id为 cea968a92c01 的容器
    docker restart cea968a92c01
  6. docker kill 杀死正在运行中的容器

    #杀死id为 cea968a92c01 的容器
    docker kill cea968a92c01
  7. docker rm 删除一个或多个容器,多个容器之间用空格隔开

    # 删除id为 cea968a92c01 的容器
    docker rm cea968a92c01
  8. docker pause/unpause 暂停/恢复容器中所有进程

    # 暂停id为 cea968a92c01 的容器中所有进程
    docker pause cea968a92c01
    
    # 恢复id为 cea968a92c01 的容器中所有进程
    docker unpause cea968a92c01
  9. docker exec 在容器中执行命令

    # 命令格式
     docker exec [OPTIONS] CONTAINER COMMAND [ARG...]
     
     # 在id为 66c6f21aa2d1 的容器中运行/bin/bash 程序
     docker  exec -it 66c6f21aa2d1   /bin/bash

四、容器操作

  1. 查看容器列表

    docker ps -a

未完待续。。。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Docker基础命令(快速入门) 的相关文章

  • os.walk()获取指定路径下文件夹及文件名的方法

    filepath next os walk rootpath 0 dirlist next os walk rootpath 1 filelist next os walk rootpath 2
  • 蓝屏代码大全详解

    完整的BSOD错误代码列表从STOP 0x1到STOP 0xC0000221 一个死机 BSOD 的蓝屏 技术上称为一个STOP错误 若在Windows遭受了严重的错误 被迫 停 的问题 在任何Windows 操作系统中都会出现BSOD错误
  • Vulkan教程 - 17 描述符与内存对齐

    之前章节的描述符布局描述了描述符可以绑定的类型 本章我们要对每个VkBuffer资源创建一个描述符集合来将它绑定到统一缓冲描述符上 描述符集合不能够直接创建 必须从一个池中分配 就和命令缓冲一样 同样的 对应也有描述符池 写一个新方法cre
  • 细说单片机晶振电路中22pf或30pf电容的作用

    刚学单片机的学长告诉我单片机的晶振电路中就是用22pf或30pf的电容就行 听人劝吃饱饭吧 照着焊电路一切ok 从没想过为什么 知其所以然而不知其为什么所以然 真是悲哀 最近状态好像一直不太好 也难以说清楚为什么 前几天跟着老师去别的实验室
  • keil5安装到中文路径,导致软件、文件打不开,或打开文件为灰色,无法编译运行

    keil5安装到中文路径 导致软件 文件打不开 1 查看keil软件安装位置 1 1 win键 搜索keil 点击打开文件位置 1 2 鼠标右键 I 打开文件所在的位置 2 修改安装文件夹为英文名称 2 1找到中文名称文件夹 修改为英文名称
  • Shell遍历文件、文件夹/目录

    执行时需要输入 文件名 如果要输入文件就加 gt 文件名 如sh list sh home gt list txt 遍历文件夹 bin bash read dir for file in ls 1 do if d 1 file then e
  • mac【M1】安装虚拟机vmwarefusion+win11

    mac M1 安装虚拟机vmwarefusion win11 1 下载vmware fusion 2 下载win11的镜像 3 安装vmware fusion 4 打开后 选择镜像安装系统 5 设置1 6 设置2 7 设置3 8 设置4 1
  • js 复制图片至剪贴板(原生js,可复制word等、不可微信)

    copyChart 复制charts为图片 获取highcharts的svg图片 const img new Image img src 图片路径 将svg转化为canvas const canvas document createElem
  • Shell脚本实战之文件批量创建和修改

    Shell脚本实战之文件批量创建和修改 一 脚本要求 二 脚本内容 三 脚本运行结果 一 脚本要求 1 所有操作在 python下 2 批量创建12个以py后缀结尾的文件 文件名中必须包含 hcip 文件名除了 hcip固定字符串外 文件名
  • jdk安装与环境变量配置,看这篇就够了

    文章目录 场景 jdk 下载安装 如何环境变量的配置 总结 场景 在做 java 开发或者 android 开发 经常会碰到 jdk 安装与环境变量的配置 每次配置的时候 经常需要去查看一下 而且偶尔还会出现错误 这里就把这块详细的记录一下
  • (centos7-x86)编译安装zabbix6.0LTS+Mariadb10.5+Apache+php7.4【安装完整版】

    zabbix是一个基于WEB界面的提供分布式系统监视以及网络监视功能的企业级的开源解决方案 zabbix能监视各种网络参数 保证服务器系统的安全运营 并提供灵活的通知机制以让系统管理员快速定位 解决存在的各种问题 zabbix由2部分构成
  • 2023年软件测试职业发展趋势【附晋升路线】

    2023年就这么来啦 未来可期 你准备好了么 软件测试是个可以很快入门的职业 门坎不高 一般软件测试人员的起薪普遍比较高 而工作1 2年后 月薪达到10k 15k的比比皆是 另外还可享受带薪年假 内部培训 年终奖金等福利待遇 可以说跟开发人
  • 解决pycharm报错ModuleNotFoundError: No module named ‘selenium‘

    按照这篇博客安装了seleniu和Chromedriver后 在运行脚本时 报了如题的错误 意思是没有导入selenium模块 于是我有在cmd环境下输入检查命令 pip show selenium 重新检查了下 的确有安装 再检查下在py
  • 以太坊开发者工具的最新清单

    以太坊开发者工具的最新终极清单 用于在以太坊上开发应用程序的可用工具 组件 框架和平台的指南 对于任何开发者 无论你是一个睁大眼睛的Web3新手还是一个头发灰白的OG加密无政府主义技术霸主 Github都是你的朋友 特别是ConsenSys
  • 我将 ChatGPT 变成了每月的经常性收入

    这是您可以做同样的事情的方法 ChatGPT 很棒 毫无疑问 但更好的被动收入 将这 2 个坏男孩组合在一起 你就有了一个杀手组合 这正是我所做的 今天 我将解释如何 具体来说 我会告诉你 我做了什么把 ChatGPT 变成 MRR 我是怎
  • c++获取当前时间戳,单位是毫秒

    你可以使用 time h 中的 time 函数来获取当前的时间戳 它的返回值是从 1970 年 1 月 1 日 00 00 00 UTC 到现在的时间 以秒为单位 如果你需要以毫秒为单位的时间戳 你可以使用 time 函数的返回值除以 10
  • CentOS 8 官方正式发布了!

    CentOS 8 官方正式发布了 CentOS 完全遵守 Red Hat 的再发行政策 并且致力与上游产品在功能上完全兼容 CentOS 对组件的修改主要是去除 Red Hat 的商标及美工图 该版本还包含全新的 RHEL upstream
  • 数字序列的最大间隔(harsh)

    题目描述 题目描述 请输出数字序列的最大间隔 请使用以下伪随机数生成函数 rand32 生成伪随机数 int seed int rand return seed seed 214013L 2531011L gt gt 16 0x7fff i
  • 《积累》键盘keycode对照表

    字母和数字键的键码值 keyCode 按键 键码 按键 键码 按键 键码 按键 键码 A 65 J 74 S 83 1 49 B 66 K 75 T 84 2 50 C 67 L 76 U 85 3 51 D 68 M 77 V 86 4
  • Mybatis学习笔记6 模糊查询like

    1 模糊 like 模糊查询的实现有两种方式 一是java代码中给查询数据加上 二是在mapper文件sql语句的条件位置加上 需求 查询姓名有 王 的 1 1 java代码中提供要查询的 王 接口方法 List

随机推荐