Docker学习笔记

本文详细介绍了Docker的安装、基本原理、常用命令、镜像管理和容器数据卷等内容,旨在帮助读者深入理解Docker的运作机制,并提供实战案例,如安装MySQL和构建Tomcat镜像,以便于实际操作中更好地应用Docker。
摘要由CSDN通过智能技术生成

Docker学习笔记

docker概述

基于go语言开发的开源项目 解决环境问题——“在我的电脑上能跑”

传统开发一款产品 两套环境 开发和上线 环境配置麻烦 无法跨平台

传统:打jar包 交给运维

现在:开发打包部署上线(打包jar包+环境)

集装箱思想:环境镜像,打包装箱,每个箱子之间相互隔离

虚拟机:在windows中安装一个vmware,通过软件去虚拟化出一台或多台电脑 笨重 几分钟启动

容器:核心环境镜像(最核心环境+jdk+mysql…)同样是虚拟化技术 轻巧 秒级启动

官方文档:https://docs.docker.com

仓库地址:https://hub.docker.com 发布镜像

Docker能干什么?

虚拟机技术缺点:资源占用多;冗余步骤多;启动慢

容器化技术:并非模拟一个完整的操作系统

比较docker和传统虚拟机技术:

  • 传统虚拟机会虚拟出一套硬件,模拟一个完整的操作系统,然后在此操作系统安装运行软件

  • 容器内的应用程序直接运行在宿主机的内核,容器没有自己的内核,也没有虚拟硬件,所以更为轻便

  • 每个容器相互隔离,有自己的一套文件系统,互不影响

    DevOps(开发,运维)

    应用更快速的交互和部署

    传统:大量帮助文档,安装程序

    Docker:打包镜像发布测试,一键运行

更便捷的升级和扩容

​ 项目打包为一个镜像,可以以服务器为单位整体扩展

更简单的系统运维

​ 容器化之后,开发测试环境变得高度一致

更高效的计算机资源利用率

​ Docker是内核级别的虚拟化,可以在一台物理机上运行很多容器实例

Docker安装

Docker的基本组成

客户端-服务器-远程仓库

在这里插入图片描述

镜像image :

docker镜像好比是一个模版,可以通过这个模版来创建容器服务,tomcat镜像->run->tomcat01容器(提供服务器),

通过这个镜像可以创建多个容器(最终服务或项目运行在容器当中)

容器cotainer :

Docker利用容器技术,独立运行一个或一组应用,通过镜像来创建。

启动 停止 删除 基本命令

简单看作一个简易版Linux系统

仓库repository:

仓库是用来存放镜像的地方,分为共有仓库和私有仓库

Docker Hub默认国外

阿里云等等(镜像加速)

安装Docker

环境准备CentOS7;Xshell远程连接

参考帮助文档

卸载旧版本-安装相关依赖包-设置镜像仓库-安装docker相关内容-启动docker——systemctl start docker

Run的流程和Docker原理

Docker run - 在本机寻找镜像-有则运行 没有就在仓库上下载-仓库有则下载到本地并运行 没有则返回报错

在这里插入图片描述

底层原理

Docker是怎么工作的?

Docker是一个client-server结构系统,Docker守护进程运行在主机上,客户端通过socket访问

docker-server接收到docker-client的指令后执行

在这里插入图片描述

Docker为什么比VM快?

  • Docker有着比虚拟机更少的抽象层
  • Docker使用的是宿主机的内核,VM需要Guest OS

所以docker启动时不需要重新加载一个操作系统的内核

Docker常用命令

帮助命令

docker version 显示当前docker版本信息

docker info 显示docker的系统信息 包括镜像和容器的数量

docker 命令 --help

镜像命令

docker images 查看所有本地主机上的镜像

可选项:-a 显示所有镜像 -q 仅显示镜像id

docker search mysql 搜素镜像

可选项:–filter stars=3000 #过滤查找收藏数大于3000的镜像结果

docker pull 镜像名 下载镜像

可指定版本下载 否则默认下载最新版本

docker rmi 删除镜像

docker rmi -f 镜像id #删除指定镜像

docker rmi -f $(docker images -aq) #删除全部镜像

容器命令

说明:有了镜像才可以创建容器

docker pull centos

新建容器并启动

docker run [可选参数] image
#参数说明
--name="Name" 容器名
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值