当前位置: 首页 > news >正文

Docker关于下载,镜像配置,容器启动,停止,查看等基础操作

系列文章目录


文章目录

  • 系列文章目录
  • 前言
  • 一、安装Docker并配置镜像加速器
  • 二、下载系统镜像(Ubuntu、 centos)
  • 三、基于下载的镜像创建两个容器 (容器名一个为自己名字全拼,一个为首名字字母)
  • 四、容器的启动、 停止及重启操作
  • 五、查看正在运行的容器和所有容器
  • 六、怎么退出容器: 两种方法分别实现
  • 七、怎么连接到正在运行的容器内?
  • 八、.查看容器或镜像的内部信息
  • 九、如何查看所有镜像
  • 总结


前言

关于什么是Docker容器?我们该如何去简单化的将他理解?

  1. 虚拟化的革新发展,进而带动当代云原生等一些新概念的高速发展,进而docke体现了他的先进性、便捷性,操作简单性;
  2. Docker容器是基于linux容器的技术,在此基础上进一步的封装更正,让用户不用去担心容器的管理,用户操作更体现在一个Linux虚拟机上的操作一样简单;
  3. Docker是一个开源的应用容器引擎,可以轻松的为任何应用随时创造一个轻量级的,可移植的,自给自足的容器。开发者在本地编译测试后通过容器可以批量的在生产环境中部署,包括在一些其他的虚拟机,bare,metal,OpenStrack集群平台;
  4. 简单化来说,在一个docker码头,源源不断的收集容器货物存储在码头上,而码头的管理者就是Docker在运行,每一个人、每一个商家或者每一个公司都有属于自己的一个“货品”集装箱,一个个体的依赖关系软件,应用程序都在一个”货品“集装箱里,与其他个体互不干扰,都在docker码头由docker平台统一管理,简单方便的装载,复制,移除,非常适合软件弹性架构;
  5. 所以,对于开发人员和公司,当即时的需要一个容器或者一种依赖关系的部署的时候,就可以抓取一个容器进行少量修改,就可以进行部署到各自需要的对应的环境中,达到以前不能够短暂性达到的目的;
  6. Docker基本架构
    在这里插入图片描述
    (1)容器省去了操作系统,整个层级更简单化,可以在单台服务器上,运行更多的应用
    (2)容器本身是相互隔离的,大师没有包含操作系统,而是共用了宿主机的操作系统和运行时库

我们为什么要使用docker?

  1. Docker容器的启动可以实现秒速级别,相比于传统下的虚拟机更方便,省时省力,在IT分秒必争的大环境下,这着实能给足很大的安全感;
  2. Docker的资源利用率很高,一台主机上可以同时运用数千个docker容器;
  3. Docker除了运行中的应用以外,基本不消耗额外的系统资源,是的应用的性能很高,同时系统的开销尽量小;
  4. 更快的交付和部署,对Docker可以快速创建容器,快速迭代应用程序,并让整个过程可见,是的团队中的其他成员更容易理解应用程序是如何创建和工作的;
  5. 更高效的虚拟化,由于Docker时内核级别的虚拟化,原本就是提高性能和效率;
  6. 更轻松的迁移和扩展,Docker在物理机,虚拟机,公有云,私有云,个人电脑,服务器等,都可以运行,迁移数据更具有兼容时效性;
  7. 更简单的管理,根据不同的兼容性和匹配性,修改所需要的容器代码,就可以满足相应的条件。

对比传统虚拟机总结

特性容器虚拟机
启动秒级别分钟级别
硬盘使用一般为MB一般为GB
性能接近原生弱于
系统支持量单机支持上千个容器一般几十个

一、安装Docker并配置镜像加速器

  1. 安装需要的软件包,yum-util提供yum-config-manager功能,另外两个是devicemapper驱动依赖的yum install -y yum-utils device-mapper-persistent-data lvm2;

  2. 设置yum源;

  3. 安装docker ,出现输入的界面都按y;

  4. 查看docker版本,验证是否验证

在这里插入图片描述

 1、yum install -y yum-utils device-mapper-persistent-data lvm22、yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo3、yum install -y docker-ce4、docker --version 

我这里配置的时阿里云的镜像加速器
在这里插入图片描述

[root@coco ~]# sudo mkdir -p /etc/docker
[root@coco ~]# sudo tee /etc/docker/daemon.json <<-'EOF'
> {
> "registry-mirrors": ["https://nm61f549.mirror.aliyuncs.com"]
> }
> EOF
{
"registry-mirrors": ["https://nm61f549.mirror.aliyuncs.com"]
}
[root@coco ~]# 
[root@coco ~]# sudo systemctl daemon-reload
[root@coco ~]# sudo systemctl restart docker
[root@coco ~]# 

清空防火墙配置规则,然后再启动Docker

1、systemctl stop firwalld && systemctl disable firwalld
2、systemctl stop firewalld && systemctl disable firewalld
3、systemctl status firewalld.service 
4、sudo systemctl daemon-reload
5、sudo systemctl start docker
6、sudo systemctl enable docker
7、docker version

查看docker版本,欧克!
在这里插入图片描述

二、下载系统镜像(Ubuntu、 centos)

在这里插入图片描述

1、centeos7
[root@coco ~]# docker pull centos:7
7: Pulling from library/centos
2d473b07cdd5: Pull complete 
Digest: sha256:9d4bcbbb213dfd745b58be38b13b996ebb5ac315fe75711bd618426a630e0987
Status: Downloaded newer image for centos:7
docker.io/library/centos:7
2、ubuntu安装
[root@coco ~]# docker pull ubuntu
Using default tag: latest
latest: Pulling from library/ubuntu
7b1a6ab2e44d: Pull complete 
Digest: sha256:626ffe58f6e7566e00254b638eb7e0f3b11d4da9675088f4781a50ae288f3322
Status: Downloaded newer image for ubuntu:latest
docker.io/library/ubuntu:latest

三、基于下载的镜像创建两个容器 (容器名一个为自己名字全拼,一个为首名字字母)

1、容器名一个为自己名字全拼
[root@coco ~]# docker run --name xiangzhenzeng -it centos:7
[root@d4b6dd2d653d /]# exit
exit2、容器一个为首名字字母
[root@coco ~]# docker run --name xzz -it centos:7
[root@7f394dce45f8 /]# 
[root@7f394dce45f8 /]# exit
exit

四、容器的启动、 停止及重启操作

①docker start 容器名称 启动容器
②docker stop 容器名称 停止容器
③docker resart 容器名称 重启容器

[root@coco ~]# docker start xzz
xzz
[root@coco ~]# docker stop xzz
xzz
[root@coco ~]# docker restart xzz
xzz

五、查看正在运行的容器和所有容器

①docker ps 查看正在运行的容器
②docker ps -a 查看全部容器

一、
[root@coco ~]# docker ps
CONTAINER ID   IMAGE      COMMAND       CREATED         STATUS          PORTS     NAMES
7f394dce45f8   centos:7   "/bin/bash"   9 minutes ago   Up 23 seconds             xzz二、
[root@coco ~]# docker ps -a
CONTAINER ID   IMAGE      COMMAND       CREATED          STATUS                      PORTS     NAMES
7f394dce45f8   centos:7   "/bin/bash"   10 minutes ago   Up About a minute                     xzz
d4b6dd2d653d   centos:7   "/bin/bash"   10 minutes ago   Exited (0) 10 minutes ago             xiangzhenzeng

六、怎么退出容器: 两种方法分别实现

1、第一种 exit

[root@coco ~]# docker run --name xzz -it centos:7
[root@e1e80097db9c /]# read escape sequence
[root@e1e80097db9c /]# exit
exit

2、 第二种 Ctrl+P+Q

[root@coco ~]# docker exec -it xzz /bin/bash
[root@e1e80097db9c /]# 
[root@e1e80097db9c /]#                     
[root@e1e80097db9c /]# 
[root@e1e80097db9c /]# 
[root@e1e80097db9c /]# read escape sequence
[root@coco ~]# 

七、怎么连接到正在运行的容器内?

[root@coco ~]# docker stop xzz
xzz
[root@coco ~]# docker exec -it xzz /bin/bash
Error response from daemon: Container e1e80097db9c0c0e82404b7eb0542017561381e8f863150b1abc42355d7ceae7 is not running
[root@coco ~]# 
[root@coco ~]# 
[root@coco ~]# docker start xzz
xzz
[root@coco ~]# docker exec -it xzz /bin/bash
[root@e1e80097db9c /]# 

八、.查看容器或镜像的内部信息

docker inspect 容器名称 查看容器或镜像的内部信息命令

[root@coco ~]# docker inspect xzz

在这里插入图片描述

九、如何查看所有镜像

docker images ls 查看所有镜像

[root@coco ~]# docker image ls
REPOSITORY   TAG       IMAGE ID       CREATED         SIZE
ubuntu       latest    ba6acccedd29   22 months ago   72.8MB
centos       7         eeb6ee3f44bd   23 months ago   204MB
centos       latest    5d0da3dc9764   23 months ago   231MB

总结

以上就是最基本的一些容器的入门命令了解操作,容器这个东西是真的很好用,小伙伴们抓紧学习起来吧!

相关文章:

Docker关于下载,镜像配置,容器启动,停止,查看等基础操作

系列文章目录 文章目录 系列文章目录前言一、安装Docker并配置镜像加速器二、下载系统镜像&#xff08;Ubuntu、 centos&#xff09;三、基于下载的镜像创建两个容器 &#xff08;容器名一个为自己名字全拼&#xff0c;一个为首名字字母&#xff09;四、容器的启动、 停止及重启…...

穿越网络迷雾的神奇通道 - WebSocket详解

WebSocket&#xff0c;作为一项前端技术&#xff0c;已经成为现代Web应用不可或缺的一部分。本文将深入解析WebSocket&#xff0c;介绍其工作原理和用途&#xff0c;并通过简单的代码示例&#xff0c;让你对这个神奇的网络通信协议有更深入的了解。 WebSocket是什么&#xff1…...

无脑入门pytorch系列(五)—— nn.Dropout

本系列教程适用于没有任何pytorch的同学&#xff08;简单的python语法还是要的&#xff09;&#xff0c;从代码的表层出发挖掘代码的深层含义&#xff0c;理解具体的意思和内涵。pytorch的很多函数看着非常简单&#xff0c;但是其中包含了很多内容&#xff0c;不了解其中的意思…...

Python土力学与基础工程计算.PDF-压水试验

Python 求解代码如下&#xff1a; 1. import math 2. 3. # 输入参数 4. L 2.0 # 试验段长度&#xff0c;m 5. Q 120.0 # 第三阶段计算流量&#xff0c;L/min 6. p 1.5 # 第三阶段试验段压力&#xff0c;MPa 7. r0 0.05 # 钻孔半径&#xff0c;m 8. 9. # 计算透…...

Linux入门

一、安装相关软件 1.下载vmware (很容易下载,搜一下官网 ) 在cmd敲入 ncpa.cpl &#xff0c;查看是否有vmware 2.下载centos 下面是镜像源网站&#xff0c;当然你可以选择其他的镜像源&#xff0c;像清华镜像源和阿里镜像源。 Index of /centos/7.9.2009/isos/x86_64/ | …...

适合国内用户的五款ChatGPT插件

众所周知使用ChatGPT3.5需要使用魔法且不稳定&#xff0c;订阅ChatGPT4.0每月需要支付20美元&#xff0c;并且使用次数有限制。对于那些不想每年花费240美元&#xff08;超过1500元人民币&#xff09;来使用GPT4.0的朋友们来说&#xff0c;还有别的办法吗&#xff1f; 答案是&…...

Dubbo Spring Boot Starter 开发微服务应用

环境要求 系统&#xff1a;Windows、Linux、MacOS JDK 8 及以上&#xff08;推荐使用 JDK17&#xff09; Git IntelliJ IDEA&#xff08;可选&#xff09; Docker &#xff08;可选&#xff09; 项目介绍 在本任务中&#xff0c;将分为 3 个子模块进行独立开发&#xff…...

linux中互斥锁,自旋锁,条件变量,信号量,与freeRTOS中的消息队列,信号量,互斥量,事件的区别

RTOS 对于目前主流的RTOS的任务&#xff0c;大部分都属于并发的线程。 因为MCU上的资源每个任务都是共享的&#xff0c;可以认为是单进程多线程模型。 【freertos】003-任务基础知识 在没有操作系统的时候两个应用程序进行消息传递一般使用全局变量的方式&#xff0c;但是如…...

安装docker服务,配置镜像加速器

文章目录 1.安装docker服务&#xff0c;配置镜像加速器2.下载系统镜像&#xff08;Ubuntu、 centos&#xff09;3.基于下载的镜像创建两个容器 &#xff08;容器名一个为自己名字全拼&#xff0c;一个为首名字字母&#xff09;4.容器的启动、 停止及重启操作5.怎么查看正在运行…...

CF 896 C Willem, Chtholly and Seniorious(珂朵莉树模板)

CF 896 C. Willem, Chtholly and Seniorious(珂朵莉树模板) Problem - C - Codeforces 大意&#xff1a;给出一个区间 &#xff0c; 要求进行四种操作 &#xff0c; 区间加 &#xff0c; 区间第k大 &#xff0c; 区间推平 &#xff0c; 区间求和。 珂朵莉树模板题 &#xff…...

Android Jetpack组件的全方位分析

Jetpack是一个用于简化Android应用程序开发的工具包&#xff0c;包含了一系列的组件和工具。Jetpack包含了很多组件&#xff0c;如LiveData、ViewModel、Room、Data Binding、Navigation等。 Jetpack组件是一种更高级别的抽象&#xff0c;它们可以提供更简洁、更易于使用的API。…...

Prometheus+Grafana+AlertManager监控SpringBoot项目并发送邮件告警通知

文章目录 PrometheusGrafanaAlertManager监控平台搭建新建SpringBoot项目为Prometheus提供指标新建项目&#xff0c;引入依赖新建接口&#xff0c;运行程序 推送指标到pushgateway 开始监控Grafana连接Prometheus数据源导入Grafana模板监控SpringBoot项目 邮件告警通知同系列文…...

猿辅导Motiff亮相IXDC 2023国际体验设计大会,发布新功能获行业高度关注

近日&#xff0c;“IXDC 2023国际体验设计大会”在北京国家会议中心拉开序幕&#xff0c;3000设计师、1000企业、200全球商业领袖&#xff0c;共襄为期5天的用户体验创新盛会。据了解&#xff0c;此次大会是以“设计领导力”为主题&#xff0c;分享全球设计、科技、商业的前沿趋…...

【QT】重写QAbstractLIstModel,使用ListView来显示多列数据

qt提供了几个视图来进行信息的列表显示&#xff0c;QListView可以用来显示继承QStractListModel的字符串列表中的字符串&#xff0c;默认的模型里面只包含一列的内容&#xff1a; 这里以qml为例子&#xff0c;先新建一个qml的项目&#xff0c;示例代码如下&#xff1a; 先创建一…...

【从零学习python 】64. Python正则表达式中re.compile方法的使用详解

文章目录 re.compile方法的使用进阶案例 re.compile方法的使用 在使用正则表达式时&#xff0c;我们可以直接调用re模块的match、search、findall等方法&#xff0c;并传入指定的正则表达式进行匹配。另外&#xff0c;我们还可以使用re.compile方法生成一个正则表达式对象&…...

【FAQ】视频云存储/安防监控EasyCVR视频汇聚平台如何通过角色权限自行分配功能模块?

视频云存储/安防监控EasyCVR视频汇聚平台基于云边端智能协同&#xff0c;支持海量视频的轻量化接入与汇聚、转码与处理、全网智能分发、视频集中存储等。音视频流媒体视频平台EasyCVR拓展性强&#xff0c;视频能力丰富&#xff0c;具体可实现视频监控直播、视频轮播、视频录像、…...

基于Spring Boot的社区诊所就医管理系统的设计与实现(Java+spring boot+MySQL)

获取源码或者论文请私信博主 演示视频&#xff1a; 基于Spring Boot的社区诊所就医管理系统的设计与实现&#xff08;Javaspring bootMySQL&#xff09; 使用技术&#xff1a; 前端&#xff1a;html css javascript jQuery ajax thymeleaf 微信小程序 后端&#xff1a;Java …...

mysql从传统模式切到GTID模式后启动主从,主从异常报错1236

一 前言 MySQL 的主从复制作为一项高可用特性&#xff0c;用于将主库的数据同步到从库&#xff0c;在维护主从复制数据库集群的时候&#xff0c;作为专职的MySQL DBA&#xff0c;笔者相信大多数人都会遇到“Got fatal error 1236 from master when reading data from binary …...

Qt+C++串口调试接收发送数据曲线图

程序示例精选 QtC串口调试接收发送数据曲线图 如需安装运行环境或远程调试&#xff0c;见文章底部个人QQ名片&#xff0c;由专业技术人员远程协助&#xff01; 前言 这篇博客针对<<QtC串口调试接收发送数据曲线图>>编写代码&#xff0c;代码整洁&#xff0c;规则&…...

【从零学习python 】75. TCP协议:可靠的面向连接的传输层通信协议

文章目录 TCP协议TCP通信的三个步骤TCP特点TCP与UDP的区别TCP通信模型进阶案例 TCP协议 TCP协议&#xff0c;传输控制协议&#xff08;英语&#xff1a;Transmission Control Protocol&#xff0c;缩写为 TCP&#xff09;是一种面向连接的、可靠的、基于字节流的传输层通信协议…...

ARM链接器Scatter文件解析与内存布局优化

1. ARM链接器Scatter文件核心概念解析在嵌入式系统开发中&#xff0c;内存布局的精确控制是确保系统稳定运行的关键。ARM链接器通过Scatter文件这一强大工具&#xff0c;为开发者提供了细粒度的内存管理能力。Scatter文件本质上是一个描述文件&#xff0c;它定义了代码和数据在…...

Kimi融资超376亿商业化成熟,DeepSeek拟募资500亿估值超515亿美元,谁能笑到最后?

Kimi是融资最多的创业派&#xff0c;DeepSeek是估值最高的技术派&#xff0c;前者拼商业&#xff0c;后者拼“国运”。 最近&#xff0c;被并称为“中国AI开源双子星”的Kimi&#xff08;月之暗面&#xff09;和DeepSeek&#xff08;深度求索&#xff09;频繁刷屏。先是新模型接…...

DistroAV(原OBS-NDI)终极配置指南:5步打造专业级网络视频传输系统

DistroAV&#xff08;原OBS-NDI&#xff09;终极配置指南&#xff1a;5步打造专业级网络视频传输系统 【免费下载链接】obs-ndi DistroAV (formerly OBS-NDI): NDI integration for OBS Studio 项目地址: https://gitcode.com/gh_mirrors/ob/obs-ndi 你是否曾为OBS Stud…...

从协议到代码:用Python仿真5G NR下行同步全流程(含PBCH解码与MIB解析)

从协议到代码&#xff1a;用Python仿真5G NR下行同步全流程&#xff08;含PBCH解码与MIB解析&#xff09; 在通信系统设计中&#xff0c;下行同步是终端接入网络的第一步关键操作。5G新空口(NR)技术引入了更复杂的同步信号结构&#xff0c;这对算法工程师和研究人员提出了更高要…...

XClaw Skill:AI Agent的社交网络与技能市场接入实战指南

1. 项目概述&#xff1a;XClaw Skill&#xff0c;AI Agent的“社交网络”与“技能市场”通行证如果你正在开发或使用AI Agent&#xff0c;并且希望它不再是一个信息孤岛&#xff0c;而是能与其他Agent交流、协作、甚至通过自己的“手艺”赚取收益&#xff0c;那么XClaw.network…...

告别一堆转换头!一个自研小工具搞定USB、网口、485、232、TTL全互连(附配置软件)

极简主义工程师的终极武器&#xff1a;全协议互连调试工具实战指南 每次出差调试设备&#xff0c;我的背包里总塞满了各种转换头——USB转串口、网口转485、232电平转换器...直到上个月在客户现场&#xff0c;当我蹲在机柜旁手忙脚乱切换第五个转换器时&#xff0c;螺丝刀不小心…...

第57篇:Vibe Coding时代:LangGraph + 代码所有者规则实战,解决 Agent 修改核心模块无人负责的问题

第57篇:Vibe Coding时代:LangGraph + 代码所有者规则实战,解决 Agent 修改核心模块无人负责的问题 一、问题场景:Agent 修改了核心文件,但没有找到该找谁审 在团队项目中,不同模块通常有不同负责人: auth 模块:安全团队 payment 模块:支付团队 database 模块:平台团…...

技术演讲的恐惧症:从实验室到舞台的艰难跨越

一、实验室里的从容&#xff0c;舞台上的慌乱对于软件测试从业者而言&#xff0c;实验室是我们的“舒适区”。在堆满服务器、屏幕上跳动着代码与测试用例的空间里&#xff0c;我们能精准定位一行代码的bug&#xff0c;能设计出覆盖所有场景的测试方案&#xff0c;能在复杂的系统…...

智能体架构实战:从LangGraph状态机到多智能体协作

1. 从理论到实践&#xff1a;为什么我们需要一个“智能体架构大全”项目如果你在过去一年里关注过AI领域&#xff0c;尤其是大语言模型的应用开发&#xff0c;那么“智能体”这个词一定已经听得耳朵起茧了。从能帮你写代码的Devin&#xff0c;到能自主完成复杂任务的GPT-4o&…...

隐写术:把秘密藏在你眼皮底下

你有没有想过&#xff0c;秘密不一定非要“加密”&#xff0c;还可以“藏起来”&#xff1f;这就是隐写术的思想——让别人根本不知道这里藏了信息。早在公元前5世纪&#xff0c;一位希腊人为了把情报传回祖国&#xff0c;把文字写在刮去蜡的木板上&#xff0c;再用新蜡覆盖。收…...