docker--容器和镜像

本文介绍了Docker的基本概念,包括其C/S架构、容器和镜像的使用。容器基于镜像启动,分为交互式和守护式。镜像由文件系统叠加而成,可从docker仓库下载。学习Docker需经历宏观把控、深入理解和实践操作等步骤。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

前言

    首先,请大家和小编一起回顾一下,到底什么是docker。Docker是一个能够把开发的应用程序自动部署到容器的开元引擎,它在虚拟化的容器执行环境中增加了一个应用程序部署引擎,该引擎的目标是提供一个轻量、快速的环境,能够运行开发者的程序,并方便高效的将程序从开发者的笔记本部署到测试环境,然后再部署到生产环境。说的通俗一点,docker其实是一个软件,在这个软件中可以部署很多个容器,我么开发一个程序,把这个程序所需要的各个软件都部署到同一个容器中,构成一个环境,然后开发、测试、实际应用的时候我们就直接部署这个容器就OK啦!

    docker是一个C/S架构的程序,docker客户端与docker守护进程交互,从而创建和管理对象(包括镜像、容器等)。详情可见下图:

   

    对docker的初步了解不外乎就是安装程序、docker的宏观把控、其次就是容器和镜像了。


容器

    容器是基于镜像启动的,可以运行一个或多个进程。容器有两种状态,一种是交互式运行的容器(交互式容器),一种是长期后台运行的容器(守护式容器)

1.运行交互式容器:

sudo docker run -i -t ubuntu /bin/bash
这句话代表创建并打开了一个容器。回车后进入容器:

2.在容器中下载一个程序:


3.附着到程序上(即进入一个自己想进入的容器)(前提是容器必须start)


4.创建守护式进程


--name之后跟给这个进程起的名字,-d代表是守护式进程后台运行



镜像

  镜像是由文件系统叠加而成,他可以从docker仓库(dockerhub)下载,容器就是运行在镜像上的。我对它的理解,就好像是我们自己电脑的程序运行在Windows系统之上,docker容器也是运行在镜像之上的,镜像类似于Windows系统docker镜像最底层是引导文件系统,即bootfs,像Linux/Unix的引导文件系统,当docker运行时,它会自动卸载,留出更多内存工磁盘使用。第二层是root文件系统rootfs,位于引导文件系统之上,它永远都是只读状态,利用利用加载机制(一次同时加载多个文件系统名)在root上加载更多的只读文件系统,但外面看起来只有一个。docker将这样的系统成为镜像。一个镜像可以放在另一个镜像顶部,当一个镜像启动时,docker会在该镜像的最顶层加载一个读写文件系统,我们想在docker中运行的程序就是在这个读写曾执行的。具体,请看下图:

 

 

总结

    学习docker的过程,真的是五味陈杂。第一次探索技术,走了很多弯路。所以总结一下自己的经验:

   1.宏观把控,弄清楚了它是什么,为什么,从哪来,到哪去,去做什么,对此产生极大地兴趣。

   2.第二步,我觉得还是得找点东西把这个技术弄个大致的,可以找本书,看官网文档或者看看网上的系列博客,再对其进行深一步的宏观把控。这个阶段要注意的是,选材,最好专业一点,不然越看越乱。还有一定不要求自己完全弄懂。

   3.第三步,进行深入理解,材料可以是书或者官方文档,千万不要在网上随便找一个(会越看越乱,而且不一定对,深有体会。。。),敲demo敲sample,实现一下。

   4.总结,这个时候也可以找找网上别的博客,帖子,或者回顾官方文档和书,颗粒归仓,查漏补缺,拓宽知识面。

   5.思想篇:不论怎样,一开始都不懂是什么,痛苦的过程是必须要经历的,我们一定要摆正心态。态度乐观,耐下心来,多多沟通交流,保持清晰的思路和逻辑。

   继续加油吧~!微笑

   

   

评论 22
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值