docker学习笔记


    寒假很快就到了,毕竟不是学校,零碎的时间很容易就被浪费掉了,为了更好的加深自己对于知识的印象,我决定还是写写博客,主要目的是总结学到的东西,然后跟大家分享。

1.什么是docker?

    docker最开始是几位大佬根据港口集装箱进行抽象(仔细看docker的icon就能发现),基于go语言开发,希望能够将软件的移动带上软件的配置环境,减少部署的困难。最开始是闭源的,但是最后有点发展不下去开源了,也正是开源使得docker迅速火起来了。

2.docker能干什么?

    实现在windows上运行linux,代替传统的虚拟机,传统的虚拟机太吃内存了,装一个收费的VMware15 和对应的linux开源镜像。docker对于资源的消耗是比较小的。为什么一定要用Linux,应为服务器一般是Linux,采用LAMP环境或者是LNMP,为了不是windows?和windows相比,Linux更加稳定、便宜、可控(可定制性强)、安全,很多病毒都是针对于windows(大部分电脑默认装的就是windows操作系统),windows有微软提供资金支持,更富商业化特色,很多需要版权,linux开源,有着广大的维护者,但是资金支持相对少一些。开源是Linux崛起的一大关键点。docker能够隔离应用,降低耦合,节省了操作系统占用的资源,提高开发效率。

3.docker基本使用方式

    至于docker的安装就不介绍了,网上有很多教程,官网也有。在安装的时候我主要遇到了win11没有开启虚拟服务、开启虚拟化之后没有重启docker两种错误。另外,对于docker的使用,推荐使用powershell 来执行指令,有些指令cmd不能正常执行(二者的主要区别:cmd是面向过程的,powershell是面向用户的,windows自带cmd但是有些不带有powershell,后期的都有,cmd能够执行的powershell都行,有些cmd不能执行的powershell也能够执行)。
    直接进入正题,简单记录一下如何去使用这个神奇的工具:

3.1配置国内镜像:

需要使用到阿里云,首先搜索容器镜像服务,找到里面的镜像加速工具,在操作文档处有不同系统的配置方法。
在这里插入图片描述
比如我这里是windows,按照里面的说明就是在右下角docker的图标右键,找到设置,然后点击设置,找到里面的Docker Engine ,在配置里面加上镜像设置即可,如下所示:
在这里插入图片描述

3.2docker的执行原理
3.3docker镜像的基本命令

(1)利用docker拉取镜像
在这里插入图片描述
    说明,docker对于镜像的拉取,首先会查看本地是否有,如果有,那么拉取本地然后讲最新的内容与远程的对比,如果不一样那么拉取最新的(指定版本则另说)。对于指定版本使用 拉取的镜像:版本号,eg.mysql:5.7。
(2)展示所有的镜像信息
在这里插入图片描述
注:docker images默认获取所有镜像的信息。
    表格参数说明:repostory,表示的是当前镜像的内容,tag表示的版本,默认是最新版,镜像id不多说,created即创建的时间(需注意的是docker里面的时间和当前的时间不一定一致,至于具体的时间同步方式,先卖个关子,不是首要功能),size是对应镜像的大小。
(3)删除镜像
    进行docker镜像的删除,可以使用rmi(remove image)实现,例如:
在这里插入图片描述
另外可以使用docker image -f + image id删除指定的镜像,还可以利用递归删除全部镜像:docker rmi -f $(docker images -aq)

3.4容器的基本命令

(1)启动并进入容器中交互运行
在这里插入图片描述
使用exit能够直接退出容器并关闭容器,使用ctrl+P+Q能够退出容器并保持容器的启动状态。
root的@符号后面的是容器id,与镜像id不一致
(2)查看容器的启动情况
在这里插入图片描述
使用 docker ps -a 能够查看当前启动的容器和历史启动的容器,docker ps -n=?显示最近创建的容器,n表示限制展示的个数。docker ps -q只展示容器的id。-q可以和前面的指令搭配使用。
(3)删除指定的容器
在这里插入图片描述
和镜像一样,也可以使用递归删除(-r,recursion)或者强制删除(-f,force),docker rm -f $(docker ps -aq)
在这里插入图片描述
(4)容器的管理
启动:docker start container id,停止:docker stop container id,重启:docker restart container id,强制停止:kill start container id

3.5其他常用的基本命令

(1)后台启动容器
在这里插入图片描述
注:容器后台启动,那么必须要有一个和容器对应的前台,否则后台运行的容器会自己关闭。类似的,nginx容器启动后如果nginx发现自己没有提供服务,那么nginx会自动停止。
(2)查看容器日志
在这里插入图片描述
注:-f表示日志加上程序的输出,-t表示的是日志加上时间戳,–tail表示的是限制打印的条数,出现了–tail其后面必须有一个条数参数。
(2)查看容器中的进程情况
在这里插入图片描述
(3)查看容器的元数据
在这里插入图片描述

参考文献

(1)浅谈linux与windows区别

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

凌空暗羽

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值