使用docker需要知道的基础知识

2023-11-07

一、docker概念

1.1、docker仓库、镜像、容器的作用和三者之间的关系是什么?

答:

Docker 仓库 用来保存镜像,可以理解为代码控制中的代码仓库。

Docker 镜像 是用于创建 Docker 容器的模板。

Docker 容器 是独立运行的一个或一组应用,通过 Docker 镜像来创建。

1.2、使用shell和docker都可以实现服务的部署和维护,两者之间的优缺点是什么?

答:

docker优点:

  • 更快速的交付和部署
  • 更轻松的迁移和扩展
  • 更简单的管理
  • 更轻松的迁移和扩展

二、docker安装

2.1、centos 7下启动docker服务命令

systemctl start docker

2.2、centos 7下设置docker开机自启命令

systemctl enable docker


三、docker镜像

注:以下操作都需要在centos 7系统下执行

3.1、从Docker Hub仓库中下载一个centos7操作系统镜像

docker pull centos:7

3.2、显示本地已有的镜像

docker images

3.3、将下载后的centos镜像打包(tar 包)

docker save -o centos7.tar centos:7

注:

命令格式:
docker save -o 自定义tar包名 镜像名:版本号

3.4、移除centos镜像

docker rmi centos:7

3.5、将打包后的centos镜像tar包释放为一个镜像

docker load -i centos7.tar

注:

命令格式:
docker load -i tar包名

3.6、利用centos镜像,生成一个docker容器并在后台运行,即以守护态运行

docker run -itd --name centos7 centos:7

注:

命令格式:
docker run -d 设置容器的各种参数(映射端口、目录、设置名字等) 需要的镜像名/镜像ID

-d:后台运行容器,并返回容器ID


四、docker容器

4.1、查看已启动容器

docker ps

4.2、进入新生成后的cnetos容器

docker exec -it centos7 sh

注:

-i:以交互模式运行容器,通常与 -t 同时使用;

-t:分配一个伪终端,通常与 -i 同时使用;

sh:表示载入容器后运行bash ,docker中必须要保持一个进程的运行,要不然整个容器就会退出。
这个就表示启动容器后启动bash。

另外:

Docker还提供了attach命令来进入Docker容器。
命令:docker attach 容器名

但以此方式进入容器后,不能exit退出容器,不然会导致容器关闭,故此种方式并不适合在生产环境使用。

4.3、退出容器

方式一:

快捷键: Ctrl + d

方式二:

命令: exit

4.4、在宿主机下查看容器详细信息

docker inspect centos7

命令格式:docker inspect 容器ID/容器名

4.5、关闭容器

docker stop centos7

命令格式:docker stop 容器ID/容器名

4.6、查看关闭后的容器状(即查看所有容器)

docker ps -a

4.7、删除容器

docker rm centos7

命令格式:docker rm 容器ID/容器名

注:

如果需要删除一个已启动的容器,则需要强制删除

docker rm -f centos7

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

使用docker需要知道的基础知识 的相关文章

随机推荐

  • 【华为OD机试】找出两个整数数组中同时出现的整数(C++ Python Java)2023 B卷

    时间限制 C C 1秒 其他语言 2秒 空间限制 C C 262144K 其他语言524288K 64bit IO Format lld 题目描述 现有两个整数数组 需要你找出两个数组中同时出现的整数 并按照如下要求输出 有同时出现的整数时
  • 上传文件——FormData的格式

    let fd new FormData fd append file params file 上传文件时 上传fd即可 使用场景 一般是异步上传文件 需要formdata的形式 表单元素的集合 减少元素的拼接 提高效率
  • 第 19 课时:调度器的调度流程和算法介绍(木苏)

    本文将主要分享以下四个部分的内容 调度流程 调度算法 如何配置调度器 如何扩展调度器 调度流程 调度流程概览 首先来看一下调度器流程概览图 调度器启动时会通过配置文件 File 或者是命令行参数 或者是配置好的 ConfigMap 来指定调
  • 安卓7.0 在加载某些https资源的时会出现证书验证错误OS Error(handshake.cc:)解决方案

    今天收到反馈 Flutter库 CachedNetworkImage 3 2 3 在华为早期安卓版本7 0系统中加载某些https网站的图像时会出现类似这样的错误 I flutter The following HandshakeExcep
  • 生成静态页面的五种方案 收藏

    方案1 public static bool WriteFile string strText string strContent string strAuthor string path HttpContext Current Serve
  • 【知识图谱】知识图谱数据库将人类的思维路径转化为机器的路径思维

    前段时间被沙特阿拉伯授予公民身份的人形机器人 索菲亚 再一次颠覆了人们对人工智能技术的认知 索菲亚 多次与人类交锋并公开发表言论的过程中 我们感受到了基本的对答如流 有时甚至还可以做到妙语连珠 据了解 索菲亚的大脑存储在云端 通过连接WIF
  • 处理处理kdevtmpfsi挖矿病毒以及他的守护进程kinsing

    服务器CPU资源占用一直处于100 的状态 检查发现是kdevtmpfsi占用导致的 此进程为挖矿程序 处理步骤如下 kdevtmpfsi 进程处理 1 top 查看cpu占用情况 找到占用cpu的进程 最后是 kdevtmpfsi 2 n
  • 将文件间的编译依存关系降至最低——条款31

    假设你对C 程序的某个class实现文件做了些轻微修改 注意 修改的不是class接口 而是实现 而且只改private成分 然后重新建置这个程序 并预计只花数秒就好 毕竟只有一个class被修改 你按下 Build 按钮或键入make 或
  • 西门子200SMART(六)数据块

    数据块中的数据页可以插入 编辑 删除 查询 和之前讨论的程序块 符号快以及状态图标基本具备一样的功能 数据块最主要点作用就是对地址和数据赋值 如下图 这里需要注意点是 这里的赋值和之前我们说过的状态图表中的强制是有区别的 强制顾名思义不管你
  • 【Pandas学习】读、存excel数据

    目录 一 读数据 二 将df存为excel 1 pandas DataFrame to csv 函数语法 2 利用 import os 获取保存路径 3 产生新的数据 添加至上述csv文件中已有数据的后面 4 多sheet 指定存入的she
  • Leecode 每日一题 problem2 (03-23)

    给你两个 非空 的链表 表示两个非负的整数 它们每位数字都是按照 逆序 的方式存储的 并且每个节点只能存储 一位 数字 请你将两个数相加 并以相同形式返回一个表示和的链表 你可以假设除了数字 0 之外 这两个数都不会以 0 开头 来源 力扣
  • 2021-10-24

    Python 简介 Python 是一个高层次的结合了解释性 编译性 互动性和面向对象的脚本语言 Python 的设计具有很强的可读性 相比其他语言经常使用英文关键字 其他语言的一些标点符号 它具有比其他语言更有特色语法结构 Python
  • ERR_PNPM_NO_GLOBAL_BIN_DIR Unable to find the global bin directory

    错误提示 ERROR Unable to find the global bin directory Run pnpm setup to create it automatically or set the global bin dir s
  • (1)minikube玩转k8s集群之虚拟机支持嵌套虚拟化

    配套视频教程 1 Minikube介绍 简单说 创建k8s集群很麻烦 minikube可以让我们快速搭建一个k8s集群用于学习 Minikube 是一种可以让您在本地轻松运行 Kubernetes 的工具 Minikube 在笔记本电脑上的
  • openId和unionId的区别

    网友的解释 微信的用户隐私策略 每个接入微信的应用 公众号 APP 就像一个独立的商场 用户使用这些应用就像逛商场 商场用会员卡识别用户 类似的 我们根据商场名字为每个用户生成了一张专属会员卡 openid 每张会员卡只能在对应的商场才能够
  • Navicat for MySQL安装教程

    Navicat for MySQL是一款强大的 MySQL 数据库管理和开发工具 它为专业开发者提供了一套强大的足够尖端的工具 但对于新用户仍然易于学习 Navicat for MySQL 基于Windows平台 为 MySQL 量身订作
  • R语言logistic回归的细节解读

    本文首发于公众号 医学和生信笔记 完美观看体验请至公众号查看本文 医学和生信笔记 专注R语言在临床医学中的使用 R语言数据分析和可视化 文章目录 二项logistic回归 R语言中的 factor 函数可以把变量变为因子类型 默认是没有等级
  • Redis缓存击穿问题及解决思路

    一 什么是缓存击穿 缓存击穿问题也叫热点Key问题 就是一个被高并发访问并且缓存重建业务较复杂的key突然失效了 无数的请求访问会在瞬间给数据库带来巨大的冲击 逻辑分析 假设线程1在查询缓存之后 本来应该去查询数据库 然后把这个数据重新加载
  • 【Java】对象的序列化与反序列化

    对象序列化的含义 对象序列化 Serialize 指将一个Java对象写入IO流中 对象的反序列化 Deserialize 则是指从IO流中恢复该Java对象 如果想让某个Java对象能够序列化 则必须让它的类实现java io Seria
  • 使用docker需要知道的基础知识

    一 docker概念 1 1 docker仓库 镜像 容器的作用和三者之间的关系是什么 答 Docker 仓库 用来保存镜像 可以理解为代码控制中的代码仓库 Docker 镜像 是用于创建 Docker 容器的模板 Docker 容器 是独