Docker容器基础知识,即linux日常运维命令

Docker 是一个流行的用 Go 语言开发的开源项目,基于Linux内核的cgroup、namespace及 AUFS 等技术,对进程进行封装隔离,由 Dotcloud 公司开发。Docker已成为容器行业的事实标准。

小陈发现一个有趣的事情,容器的英文是Container,有集装箱的意思。而Docker的中文翻译是码头工人的意思。那么,码头工人不就是搬运集装箱的吗?此外,Docker的Logo是一堆集装箱放在鲸鱼上,作为鲸鱼的docker,就是一个标准化的运输系统。

Docker核心概念

Docker 有三大核心概念,分别是容器(Container)、镜像(Image)和仓库(Repository)。

  • 镜像类似虚拟机的镜像,通俗的理解就是安装文件,相当于是容器的模板,可以根据不同的镜像来创建不同的容器。镜像和容器的关系可以理解为面向对象中类和实例对象的关系。
  • 容器类似一个轻量级的沙箱,容器是根据镜像创建的应用运行实例,具体运行应用程序的一个进程,可以将其启动、开始、停止、删除,而这些容器都是相互隔离、互不可见的。
  • 仓库类似代码仓库,是 Docker 集中存放镜像文件的场所。仓库有本地镜像仓库 Docker-Registry 和公共镜像仓库 Docker Hub,平时使用本地仓库的镜像,没有的话可以去公共镜像仓库下载。

可以用编程中面向对象的概念来做类比:镜像可以看成一个容器可以看做是类的实例化对象。一个类可以有多个对象。同理,一个镜像可以有多个容器。容器是由镜像实例化而来。简单来说,镜像是文件,容器是进程,仓库是保存镜像的地方

Build, Ship and Run Any App, Anywhere

Docker的主要目标是build、ship and run any app,anywhere,即通过对应用组件的封装、分发、部署、运行等生命周期的管理,达到应用组件级别的一次封装、到处运行,即在任何平台都可以构建、运输、运行任何应用

Docker的build、ship和run的含义如下:

  • Build(构建镜像):镜像就像是集装箱,包括文件以及运行环境等资源。
  • Ship(运输镜像):主机和仓库间运输,这里的仓库就像是超级码头一样。
  • Run (运行镜像):运行的镜像就是一个容器,容器就是运行程序的地方。

Docker的使用方式

Docker 在主流的操作系统和云平台上都可以使用,包括 Linux (如 ubuntu、Debian、CentOS、Redhat 等)、MacOS 和 Windows 操作系统,以及 阿里云 等云平台(Aliyun.com)。

推荐尽量使用 Linux 操作系统来运行 Docker,因为目前 Linux 操作系统对 Docker的支持是原生的,使用体验最好。

我们可以在阿里云云服务器ECS上,很便捷的部署配置一个Docker开发环境,以快速体验Docker容器的使用。Docker的安装比较简单,主要步骤如下(具体步骤将会在实验环节进行实践):

  1. 在阿里云(Aliyun.com)开通一台云服务器ECS
  2. 在ECS上安装必要的系统工具
  3. 添加镜像软件源信息
  4. 加入镜像源地址
  5. 安装并更新Docker-CE
  6. 查看Docker的版本,确认安装成功。若能正常显示版本信息,则安装成功
  7. 启动Docker服务
  8. 设置Docker为开机自启动

Docker基础命令

以下是Docker的一些常用命令,可以帮助初学者快速熟悉和使用Docker。

命令

指令说明

docker ps

检查容器正在运行列表

docker inspect [容器id]

查看容器参数

docker run

容器运行

docker rm

删除容器

docker exec -it [容器id] /bin/bash

在运行的容器中运行额外的进程

docker cp 文件名[容器id]:/home/admin

拷贝文件到容器内

docker images

查看本机已有镜像

docker create

创建一个尚未启动的容器,start 启动创建了的容器

docker wait

阻塞对容器的其他调用方法,直到容器停止后退出

docker stop

停止一个运行中的容器

docker start

启动一个或多个已经被停止的容器

docker top

显示主机为每个容器中的进程所分配的PID

docker diff

查看安装容器镜像时的改动,返回文件改动列表

docker inspect

显示docker为该容器保留的所有元数据(一个json文件)

docker commit

向镜像提交一个新的文件记录

通过Docker命令,运行一个容器一般情况下只需要三步:

  1. pull:从镜像仓库中将相应的镜像下载下来;
  2. list:当镜像下载完成之后就可以通过docker images 来查看本地镜像,会列出一个完整的镜像列表,可以在列表中选中想要的镜像;
  3. run:当选中镜像之后,就可以通过 docker run 来运行这个镜像,得到想要的容器。当然可以通过多次运行得到多个容器。
  4. 通过docker指令运行容器
top

iotop

uptime

iostat

vmstat

tsar

ifconfig

netatat -anpo

ifstat

ip addr show 

ulimit -a

uname -a 

runlevel

lsmod 

pstree -p

ps -ef 

ps aux

lsof 

fdisk 

hwclock

date

crontab -l

lsscsi 

blkid

df 

lspci -vvv

free

logrotate

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

Python 修炼|人人编程手册|001 计算思维

在微信中阅读,关注公众号:CodeFit。 > 创作不易,如果你觉得这篇文章对您有帮助,请不要忘了 点赞、分享 和 关注,为我的 持续创作 提供 动力! 1. 计算思维 在我们正式开启 Python 修炼之旅前,先来了解一个关键的概念 —— 计算思维。 计算思维,其核心本质在于 抽象 …

【MATLAB源码-第229期】基于matlab的有源功率因数校正仿真,采用PI调节改善功率因数;改善后达到99%.

操作环境: MATLAB 2022a 1、算法描述 一、整体结构概述 有源功率因数校正(APFC)是一种用于提高电力系统功率因数的技术,通过控制电流的波形,使其与电压的波形保持一致,从而减少无功功率的产生&#xff…

[【机器学习】深度概率模型(DPM)原理和文本分类实践

1.引言 1.1.DPM模型简介 深度概率模型(Deep Probabilistic Models) 是结合了深度学习和概率论的一类模型。这类模型通过使用深度学习架构(如神经网络)来构建复杂的概率分布,从而能够处理不确定性并进行预测。深度概率…

【C++进阶学习】第三弹——菱形继承和虚拟继承——菱形继承的二义性和数据冗余问题

继承(上):【C进阶学习】第一弹——继承(上)——探索代码复用的乐趣-CSDN博客 继承(下):【C进阶学习】第二弹——继承(下)——挖掘继承深处的奥秘-CSDN博客 …

大数据经典sql

一、连续登录问题 问题:1)、每个用户连续登录最大天数 2)、连续登录大于三天的用户数 分析:本质都是计算用户连续登录天数 方案一:利用排序窗口 select a.user_id,a.date_rslt,count(1) as cnt from (select t.…

艺术创作加速器:三款AI绘画软件,让你的工作效率倍增!

在数字化浪潮的推动下,艺术创作正迎来革命性的变化。AI绘画软件的出现,不仅为艺术家提供了全新的创作工具,也为艺术爱好者开辟了一片创意的新天地。这些软件利用人工智能技术,根据用户的简单描述或草图,快速生成独特的…

旋转式滚珠花键在自动装载机中的作用!

自动装载机是一种广泛用于公路、铁路、建筑、水电、港口、矿山等建设工程的土石方施工机械,是工程建设中土石方施工的主要机种之一。而旋转式滚珠花键作为自动装载机中重要的传动元件,在自动装载机的运用起着重要的作用。 自动装载机主要用于铲装土壤、砂…

常见的结构型设计模式

设计模式(二) 常见的结构型模式 1.代理模式: 提供一种代理方法 ,来控制对其他对象的访问。在有些情况下,一个对象不能或者不适合直接访问另一个对象,而代理对象可以在这两个类之间起一个中介的作用。 举例&#xf…

Solana链,什么是sol跟单机器人、pump跟单机器人、sol狙击机器人、sol夹子机器人、sol聪明钱筛选

Solana Sol跟单机器人🤖 SOL跟单机器人(Copy Trading Bot)是一种自动化交易工具,允许用户复制其他成功交易者的交易行为。这种机器人通常用于加密货币市场、外汇市场等金融市场。以下是SOL跟单机器人的一些关键特性和功能&#xf…

yolov10--C#接口

一、前言 本章主要讲解yolov10的C#接口,主要是使用微软开发的openvinocsharp工具加载yolov10模型,并做推理。 二、yolov10模型转换 这里为了演示,使用官方yolov10m模型(其他大小的模型同理)做演示,可从下方…

iptables(5)常用扩展模块

简介 之前我们已经介绍过扩展模块的简单使用,比如使用-m tcp/udp ,-m multiport参数通过--dports,--sports可以设置连续和非连续的端口范围。那么我们如何匹配其他的一些参数呢,比如源地址范围,目的地址范围,时间范围等,这就是我们这篇文章介绍的内容。 iprange扩展模块…

Ubuntu系统下修改网卡IP地址

Ubuntu系统下修改网卡IP地址 一、Ubuntu系统介绍1.1 Ubuntu简介1.2 Ubuntu网络配置方式 二、本地环境介绍2.1 本地环境规划2.2 本次实践介绍 三、检查本地环境3.1 检查本地操作系统版本3.2 检查系统内核版本 四、配置网卡IP地址4.1 备份网卡配置文件4.2 查看当前IP地址4.3 修改…

0.15元1.5Mhz-1.3A同步整流BUCK降压DCDC芯片MT3410(MT3410LB)

前言 国产同步整流DCDC,参考价格约0.15元。 特征 高效率:高达 96% 1.5MHz恒定频率操作 1.3A 输出电流 无需肖特基二极管 2.3V至7V输入电压范围 输出电压低至 0.6V PFM 模式可在轻负载下实现高效率 压差操作中的100%占空比 低静态电流:35μ…

刘亦菲新剧玫瑰的故事

刘亦菲新剧《玫瑰的故事》:开放结局,无限遐想 当刘亦菲再次踏入荧屏,与导演汪俊携手打造的《玫瑰的故事》便引发了无数观众的期待与关注。这部剧不仅汇聚了众多实力派演员,更以其独特的剧情和精致的制作成为了近期热门的话题。《…

(项目实战)RocketMQ5.0延迟消息在聚合支付系统中的应用

1 基于业务场景掌握RocketMQ5.0 本篇文章主要结合聚合支付系统中的业务场景来落地RocketMQ中间件的应用,聚合支付系统主要在支付系统超时订单和商户支付结果异步通知场景中会使用到RocketMQ消息中间件。本文使用到了RocketMQ中的延迟消息知识点,RocketM…

JavaScript知识点大总结来了-------这一篇就足够啦!!!

JavaScript基础知识 一、对象的使用 1、创建对象 这里创建对象的方法我们采用最常用的一种&#xff1a; //第一种 <script>var Person {name: "zhangsan",age: "19",weight: "140",hight: "170",print:function(){console.…

【Android】我的手机在...自己下载...那个(浅析Intent基础运用)

【Android】我的手机在…自己下载…那个&#xff08;浅析Intent基础运用&#xff09; 在Android开发中&#xff0c;Intent&#xff08;意图&#xff09;是一个非常重要的概念。它不仅仅是用于在应用程序的各个组件之间进行通信的工具&#xff0c;也是启动新的Activity、Servic…

恭喜行云绽放,24年再度荣获国家鼓励的企业软件证书

在刚刚过去的五月份&#xff0c;行云绽放再次传来一个好消息&#xff0c;那就是2024年行云绽放再度荣获国家鼓励的企业软件证书。 什么是国家鼓励的企业软件证书&#xff1f; 国家鼓励的企业软件证书被称为“国家鼓励的软件企业证书”&#xff0c;这一证书由中国软件行业协会…

预制直埋聚氨酯保温管:卓越管道,引领未来

在管道领域中&#xff0c;预制直埋聚氨酯保温管宛如一颗璀璨明珠&#xff0c;散发着独特的光芒。 它具备卓越的保温性能&#xff0c;犹如给流体输送穿上了一层温暖的保护衣&#xff0c;有效减少热量损耗&#xff0c;实现高效的能源利用。其坚固的结构能够轻松应对各种复杂环境…

七析BI入门指南:数据资源管理

数据BI是指解决企业数据“最后一公里”&#xff0c;帮助企业全方位提高数据决策能力的数据可视化平台&#xff0c;提供平台级多租户管理&#xff0c;统一安全策略&#xff0c;精细化权限管理&#xff0c;支持与低代码平台接入集成&#xff0c;与七巧低代码平台高度融合。 数据B…