1、docker概念和基本使用命令

docker概念

微服务:不再是以完整的物理机为基础的服务软件,而是借助于宿主机的性能。以小量的形式,单独部署的应用。

docker:是一个开源的应用容器引擎,基于go语言开发的,使用时apache2.0的协议。docker是在Linux里面运行的容器化的开源工具。是一种轻量级的虚拟机。

鲸鱼是宿主机,集装箱是一个个独立的应用。每个应用之间都是相互隔离和独立的

docker的设计的宗旨

1、封装

2、发布

3、部署

4、运行

5、销毁

容器的生命周期————>达到一次封装,多次运行的目的。

可移植,可扩展,兼容性的目的。随时对地都可以快速的部署和使用docker的应用。

docker应用的隔离

docker是在Linux上运行,与其他的容器共享主机的内核,包括其他的资源(cpu,内存,硬盘),但是docker应用都是独立的进行,为什么能做到独立:

Linux的命名空间namespace可以实现资源的隔离

Linux的cgroup可以实现对docker应用程序的资源限制

namespace是Linux内核的一种特性,允许将一组系统资源进行隔离,是一种命名空间中的进程看起来像在系统中拥有独立的资源。

namespace的6个命名空间

1、UTS  隔离主机名和域名:系统调用的参数,在每个应用中,都能看到自己的主机名和域名,与其他进程分隔开。

2、PID  隔离进程:隔离内容:进程编号,当运行应用之后,每个应用都有自己的独立的进程编号的空间,每个进程之间不会发生冲突。

3、network  隔离网络:每个应用启动之后,都有自己的独立的网络空间,隔离网络设备、端口和网络栈。

4、mount  隔离文件系统:隔离文件系统,每个应用挂载之后都有之间独立的文件系统挂载点,这些挂载点互补冲突,也不会互相干扰。

5、IPC  隔离信号量:隔离信号量,消息队列和共享内存,在IPC隔离当中,每个进程之间都有独立的通信资源。

6、user  隔离用户和用户组:每个用户和组都是独立的命名空间,不同的用户和组之间都是隔离开的。

docker的核心概念

仓库:docker的仓库是用来保存镜像的地方,也是获取镜像和上传镜像的目的地。

镜像:docker镜像是创建容器的基础,一个镜像就类似于一个可执行的、包含源码的二进制包,包括容器运行的参数、设置、环境变量和配置文件。是一个打包好的可运行程序。

容器:容器是基于镜像创建的运行的实例

docker基本命令

拉取镜像-docker pull

查看当前下载到本地的镜像-docker images

  • REPOSITORY:应用的名称
  • TAG:镜像的标签,应用的版本
  • IMAGE ID:镜像在本地的唯一标识
  • CREATED:发布在镜像仓库的时间
  • SIZE:镜像的大小

查看镜像的详细信息-docker inspect

查看镜像的详细信息-docker inspect 镜像ID

镜像下载完保存在/var/lib/docker/

overlay2:镜像的联合文件系统,有四层。

  • lowerDir:镜像的底层文件系统,整个镜像的根文件系统(运行载体)
  • upperDir:可写层,用户可以自定义的在底层文件系统上进行修改,但是这些修改又不影响根文件系统,容器可以实现读写。
  • mergedDir:合并目录,就是用户看到的容器内的一个视图
  • workDir:工作目录,进行写操作时,可以是联合文件系统overlay2更新和跟踪对于文件系统的修改。

创建镜像副本-docker tag

docker tag nginx:1.22 nginx:自定义标签:相当于给nginx:1.22做了一个副本

镜像的组成:镜像名:标签

删除镜像-docker rmi -f

docker rmi -f nginx:1.22/ID:删除镜像

导出/导入镜像-docker save/load

docker save -o /opt/centos.tar centos:7:把本地镜像导出到指定位置,保存为指定名称

docker load -i centos.tar:把镜像导入到本地docker中

创建容器-docker run -itd

docker run -itd ubuntu:22.04:如何基于镜像创建容器

  • -i:表示容器开启标准输入,接受用户输入的指令。
  • -t:生成一个伪终端tty,用户可以进入容器的内部。
  • -d:容器创建完之后进入后台运行
  • run:如果不存在指定的镜像,他会自动拉取仓库指定的镜像然后再创建容器。拉取+运行

查看运行状态的容器-docker ps

docker ps -a:查看所有状态的容器,包括运行和停止以及报错的容器。

Up:表示容器正在运行中

出现exit的原因:容器启动之后,都会有一个执行的命令,如果该命令执行完毕之后没有其他的可执行内容,那么容器会立刻退出进入终止状态。

进入容器内部-docker  exec  -it  容器id  bash

docker  exec  -it  容器id/名称  /bin/bash | bash:进入容器内部操作

创建自定义名称容器-docker  run  -itd  --name

docker  run  -itd  --name  自定义名称  容器名称:给容器自定义名称

容器:基于镜像的配置和环境,创建一个基于Linux系统的,在这个系统当中安装了指定应用的小型虚拟机。

宿主机和容器文件传输-docker  cp

1、宿主机的文件复制到容器内部:docker  cp  文件名  容器名:/路径

2、容器的文件复制到宿主机:docker  cp  容器名:/文件名   宿主机目录

查看容器的日志-docker  logs  -f

查看容器的标准输出:查看容器的日志

docker  logs  -f  容器名称

端口映射

-P:指定宿主机随机端口和容器内的端口映射,从32768——65535。

-p:需要人工指定宿主机的端口和容器进行映射,只要指定端口宿主机没有被占用都可以使用。

创建一个以nginx:1.22镜像的容器test1,指定宿主机随机端口和容器内的80端口映射

  • 82:宿主机端口,80:容器端口

删除容器-docker  rm   -f

docker  rm   -f  容器名称:强制删除容器

  • 容器是基于镜像创建的,但是容器一旦运行,镜像不再是依赖条件,镜像可以删除,不影响部署的容器。

查看容器IP地址

批量删除容器

1、批量删除后台所有已经停止的容器

2、批量删除所有容器

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/web/65934.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Genymotion配套VirtualBox所在地址

在 Genymotion打开虚拟机前需要先打开VirtualBox中的虚拟机 C:\Program Files\Oracle\VirtualBox\VirtualBox.exe 再开启genymotion中的虚拟机开关

【Linux】深刻理解软硬链接

一.软硬链接操作 1.软连接 touch 创建一个文件file.txt ,对该文件创建对应的软链接改怎么做呢? ln -s file.txt file-soft.link .给对应文件创建软连接。 软连接本质就是一个独立的文件,因为我们对应的软连接有独立的inode,他…

第三十六章 Spring之假如让你来写MVC——拦截器篇

Spring源码阅读目录 第一部分——IOC篇 第一章 Spring之最熟悉的陌生人——IOC 第二章 Spring之假如让你来写IOC容器——加载资源篇 第三章 Spring之假如让你来写IOC容器——解析配置文件篇 第四章 Spring之假如让你来写IOC容器——XML配置文件篇 第五章 Spring之假如让你来写…

快速上手 HarmonyOS 应用开发

一、DevEco Studio 安装与配置 1. DevEco Studio 简介 DevEco Studio 是 HarmonyOS 的一站式集成开发环境(IDE),提供了丰富的工具和功能,支持 HarmonyOS 应用开发的全流程。 2. DevEco Studio 下载与安装 下载地址&#xff1a…

Java Web开发进阶——错误处理与日志管理

错误处理和日志管理是任何生产环境中不可或缺的一部分。在 Spring Boot 中,合理的错误处理机制不仅能够提升用户体验,还能帮助开发者快速定位问题;而有效的日志管理能够帮助团队监控应用运行状态,及时发现和解决问题。 1. 常见错误…

图解Git——分支的新建与合并《Pro Git》

⭐分支的新建与合并 先引入一个实际开发的工作流: 开发某个网站。为实现某个新的需求,创建一个分支。在这个分支上开展工作。 正在此时,你突然接到一个电话说有个很严重的问题需要紧急修补。你将按照如下方式来处理: 切换到你…

【数据可视化-12】数据分析岗位招聘分析

🧑 博主简介:曾任某智慧城市类企业算法总监,目前在美国市场的物流公司从事高级算法工程师一职,深耕人工智能领域,精通python数据挖掘、可视化、机器学习等,发表过AI相关的专利并多次在AI类比赛中获奖。CSDN…

excel仅复制可见单元格,仅复制筛选后内容

背景 我们经常需要将内容分给不同的人,做完后需要合并 遇到情况如下 那是因为直接选择了整列,当然不可以了。 下面提供几种方法,应该都可以 直接选中要复制区域然后复制,不要选中最上面的列alt;选中可见单元格正常复制&#xff…

支持向量回归(SVR:Support Vector Regression)用于A股数据分析、预测

简单说明 支持向量回归是一种用来做预测的数学方法,属于「机器学习」的一种。 它的目标是找到一条「最合适的线」,能够大致描述数据点的趋势,并允许数据点离这条线有一定的误差(不要求所有点都完全落在这条线上)。 可以把它想象成:找到一条「宽带」或「隧道」,大部分…

LabVIEW水位监控系统

LabVIEW开发智能水位监控系统通过集成先进的传感技术与控制算法,为工业液体存储提供精确的水位调控,保证了生产过程的连续性与安全性。 项目背景 在化工和饮料生产等行业中,水位控制的准确性对保证生产安全和提高产品质量至关重要。传统的水…

深入浅出 Android AES 加密解密:从理论到实战

深入浅出 Android AES 加密解密:从理论到实战 在现代移动应用中,数据安全是不可忽视的一环。无论是用户隐私保护,还是敏感信息的存储与传输,加密技术都扮演着重要角色。本文将以 AES(Advanced Encryption Standard&am…

React Fiber框架中的Render渲染阶段——workLoop(performUnitOfWork【beginWork与completeWork】)

触发渲染过程——renderRoot renderRoot 是一个函数,用于触发渲染工作。它通常会调用并递归地执行一系列的渲染任务,直到完成整个更新过程。这个过程包括执行 Fiber 树中的 beginWork 和 completeWork,以及渲染新状态或 DOM。 function ren…

【优先算法】思还故里闾,欲归道无因 - 前缀和

本篇博客给大家带来的是前缀和算法的知识点, 也是一样通过OJ题理解,掌握,应用该算法. 🐎文章专栏: 算法 🚀若有问题 评论区见 ❤ 欢迎大家点赞 评论 收藏 分享 如果你不知道分享给谁,那就分享给薯条. 你们的支持是我不断创作的动力 . 王子,公主请阅&…

亿道三防丨三防笔记本是什么意思?和普通笔记本的优势在哪里?

三防笔记本是什么意思?和普通笔记本的优势在哪里? 在现代社会中,笔记本电脑已经成为人们工作和生活中不可或缺的一部分。然而,在一些特殊行业或环境中,普通笔记本电脑由于其脆弱性和对环境条件的敏感性,往…

SOME/IP 协议详解——服务发现

文章目录 1. Introduction (引言)2. SOME/IP Service Discovery (SOME/IP-SD)2.1 General(概述)2.2 SOME/IP-SD Message Format2.2.1 通用要求2.2.2 SOME/IP-SD Header2.2.3 Entry Format2.2.4 Options Format2.2.4.1 配置选项(Co…

Go语言之路————go环境的初始化

Go语言之路————go环境的初始化 前言一、Go的安装二、环境配置三、初始化一个新项目四、常用的一些指令 前言 我是一名多年Java开发人员,因为工作需要现在要学习go语言,Go语言之路是一个系列,记录着我从0开始接触Go,到后面能正…

鸿蒙UI开发——基于onTouch事件实现表情选择胶囊

1、背 景 有朋友留言说,抖音APP中,长按评论按钮触发的快捷表情选择胶囊动画比较好(效果如下图),希望使用鸿蒙ArkTs也实现一个类似的。 本文在鸿蒙ArkTs下也实现一个类似的效果,如下: 首先&…

Node.js——http 模块(二)

个人简介 👀个人主页: 前端杂货铺 🙋‍♂️学习方向: 主攻前端方向,正逐渐往全干发展 📃个人状态: 研发工程师,现效力于中国工业软件事业 🚀人生格言: 积跬步…

研华 PCI-1751 驱动更新导LabVIEW致程序异常

问题描述: 某 LabVIEW 程序长期运行正常,但在使用研华 PCI-1751 数据采集卡运行一段时间后,程序开始出现不正常的行为。具体过程如下: 初始问题: 更换新的 PCI-1751 板卡后,驱动程序被更新,但程…

接上篇基于Alertmanager 配置钉钉告警

Alertmanager 是一个用于处理和管理 Prometheus 警报的开源工具。它负责接收来自 Prometheus 服务器的警报,进行去重、分组、静默、抑制等操作,并通过电子邮件、PagerDuty、Slack 等多种渠道发送通知。 主要功能 去重:合并相同或相似的警报&…